Python可修改和不可修改类型变量(mutuable and immutuable)

2022-10-18,,,

通俗的讲,可修改可以理解为可以在数据所在内存地址直接修改,而不可修改则意味着一旦修改便是创建新的数据对象,而不是在原来的对象内存地址修改

1,mutuable object

[sourcecode language='python' ]
list, dict, set
l = [1,2,3]
l.append(4)
#l [1,2,3,4]

d = {}
d['a'] = 1

[/sourcecode]
[sourcecode language='python'  padlinenumbers='true' htmlscript='false']
l = [1,2,3]
l.append(4)
#l [1,2,3,4]

[/sourcecode]

2,immutuable object

基本的类型,bool, int, float, str, frozenset(冻结的集合,不能添加或删除任何元素)

当判断两个变量是否指向同一对象时,可以用is,等价于两个对象所在内存地址相同

在cpython解释器中,id(object)函数返回的便是对象的内存地址,is便是判断两个对象id是否相同,id是对象的”身份证号”

[sourcecode language='python' ]
 
[/sourcecode]

[sourcecode language='python' ]
 
[/sourcecode]

《Python可修改和不可修改类型变量(mutuable and immutuable).doc》

下载本文的Word格式文档,以方便收藏与打印。