python可变类型和不可变类型区别
可变类型 vs 不可变类型
可变类型(mutable):列表,字典(推荐学习:Python视频教程)
不可变类型(unmutable):数字,字符串,元组
这里的可变不可变,是指内存中的那块内容(value)是否可以被改变
立即学习“Python免费学习笔记(深入)”;
可以使用内建函数id()来确认对象的身份在两次赋值前后是否发生了变化。
可变数据类型,变量名存储的是一个地址,该地址指向一个具体的对象,并且不管对变量的值即对象做怎么样的操作,都不会改变变量名存储的地址。
可变类型的话,以list为例。list在append之后,还是指向同个内存地址,因为list是可变类型,可以在原处修改。、
>>> a = [1, 2, 3]>>> id(a)>>> a.append(4)>>> id(a)
不变数据类型的对象一旦发生改变,就会在内存中开辟一个新的空间用于存储新的对象,原来的变量名就会指向一个新的地址。
>>> i = 5>>> i += 1>>> i>>> id(i)>>> i += 1>>> i>>> id(i)
更多Python相关技术文章,请访问python-tutorials.html" target="_self">Python教程栏目进行学习!