美文网首页
【Python】list和tuple的

【Python】list和tuple的

作者: WayneYou | 来源:发表于2017-12-22 17:24 被阅读0次

廖雪峰:“表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!”

定义时,将['a','b',]创建在一个内存中,然后list指向这个内存,t中的list,也是指向这个内存的意思。

重新将['x','y']创建在另一个内存中,然后将list重指向新的内存堆。而之前的t的指向并不改变。单纯的改变指向不改变内存单元里的值,所以不会改变。

要是用list[0]=['x']的方式,是修改了内存单元中的值,所以会影响到tuple的值。

list=['a','b',]

t=('A','B',list)

list=['x','y']

print(t)

print(list)

('A', 'B', ['a', 'b'])

['x', 'y']

相关文章

网友评论

      本文标题:【Python】list和tuple的

      本文链接:https://www.haomeiwen.com/subject/rzdxgxtx.html