可变类型 Vs 不可变类型
可变类型(mutable):列表,字典(推荐学习:Python视频教程)
不可变类型(unmutable):数字,字符串,元组
这里的可变不可变,是指内存中的那块内容(value)是否可以被改变
可以使用内建函数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教程栏目进行学习!
以上就是python可变类型和不可变类型区别的详细内容,更多请关注Work网其它相关文章!