python 可变与不可变类型

发布时间:2024年01月13日

不可变变量
不可变量包括:数值类型、字符串和元组。一旦被重新赋值,变量对应的内存地址就会发生改变。

可变变量
不可变量包括:列表、字典、集合。添加或者修改数据时,变量对应的内存地址不会改变。也就是可变类型,一直在引用原来的内存地址。
注意:如果是重新赋值(不是添加和修改),那地址是会改变的,引用了新的内存地址。
代码:

a = 3
b = a

print("1===>>>>>>  a ==",id(a),"b == ",id(b))
b = 5
print("2===>>>>>>  a ==",id(a),"b == ",id(b))

lst_a = [1, 3, 5]

lst_b = lst_a

lst_b[1] = 2
lst_a[2] = 10

print("lst_a  == ",lst_a ,"lst_b  == " ,lst_b)
print("lst_a  == ",id(lst_a) ,"lst_b  == " ,id(lst_b))

参考:详解Python引用——可变与不可变类型原理 - 知乎 (zhihu.com)

Python中的不可变变量和可变变量&赋值、浅拷贝和深拷贝_参数是一个不可变化的量,可以被赋值、-CSDN博客

文章来源:https://blog.csdn.net/m0_63893772/article/details/135567615
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。