Python单行运行、多行运行、可变对象与不可变对象的坑

您所在的位置:网站首页 python怎么运行多行代码 Python单行运行、多行运行、可变对象与不可变对象的坑

Python单行运行、多行运行、可变对象与不可变对象的坑

2024-03-15 16:52| 来源: 网络整理| 查看: 265

Python的单行运行、多行运行、可变对象与不可变对象的坑 前提:

参考书:《Python疯狂讲义》、《Python学习手册(第4版)》、菜鸟教程等

1 Python 单行运行、多行运行问题

(1)在使用pycharm时,整个py文件运行很简单,但想运行函数内的单行、类内的单行,建议操作:

选择局部代码进行运行; 选中需要运行的代码; 右键,选择Execute Selection in Console,即可运行。

(2)在命令行窗口下时,单行运行正常操作;但想运行函数/多行运行,建议使用;\。以下举个例子。

在这里插入图片描述

(3)为什么是使用;\呀? 这是因为命令窗口下使用;可以让Python解释器识别出这一行代码结束,表示分隔代码的意思。而\为转义字符,这里可以让Python解释器知道要交互的代码块还没有结束。

2 可变对象和不可变对象

不可变对象(变量指向的内存的中的值不能够被改变):当更改该对象时,由于所指向的内存中的值不可改变,所以会把原来的值复制到新的空间,然后变量指向这个新的地址。python中数值类型(int、float),布尔型 bool,字符串 str,元组 tuple 都是不可变对象。

可变对象(变量指向的内存的中的值能够被改变):当更改该对象时,所指向的内存中的值直接改变,没有发生复制行为。python中列表 list,字典 dict,集合 set都是可变对象。包括自定义的类对象也是可变对象。

python变量保存的是对象的引用,这个引用指向堆内存里的对象,在堆中分配的对象分为两类,一类是可变对象,一类是不可变对象。不可变对象的内容不可改变,保证了数据的不可修改(安全,防止出错),同时可以使得在多线程读取的时候不需要加锁。

() is () # 返回True,因为tuple是不可变对象(不可改变) '' is '' # 返回True,因为


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3