python对象的可变与不可变

在python中 string,tuple,numbers是不可更改对象,list和dict是可更改对象。
可更改和不可更改的一个点在于修改时内存地址是否发生改变

可变不可变也是传址和传值的区别
传值的参数类型:数字,字符串,元组
传址的参数类型:列表,字典
列表,字典之所以可以在原处修改,因为传的是地址,得到地址后在这个地址上修改。

a = 1
def modify(one_string):
    one_string = 2
modify(a)
print(a) 

这时候打印的a还是1

b = []
def modify(one_list):
    one_list.append('1')
modify(b)
print(b)

这时候b=['1']

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容