元组的相对不可变性
Posted 生活会辜负努力的人,但不会辜负一直努力的人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了元组的相对不可变性相关的知识,希望对你有一定的参考价值。
元组与多数 Python 集合(列表、字典、集,等等)一样,保存的是对象的引用。 如果引用的元素是可变的,即便元组本身不可变,元素依然可变。
也就是说,元组的不可变性其实是指 tuple 数据结构的物理内容(即保存的引用)不可变,与引用的对象无关。
t1 = (1, 2, [30, 40]) t2 = (1, 2, [30, 40]) print(id(t1)) print(id(t2)) print(id(t1[-1])) t1[-1].append(1000) print(t1) print(id(t1[-1])) print(t1 == t2)
输出结果:
表明,元组的值会随着引用的可变对象的变化而变。元组中不可变的是元素的标识。
以上是关于元组的相对不可变性的主要内容,如果未能解决你的问题,请参考以下文章