如果元组是不可变的,那么为什么它可以包含可变的项呢?
当列表等可变项被修改时,它所属的元组保持不变,这似乎是一个矛盾。
发布于 2012-03-18 12:44:46
您不能更改其项目的id
。因此,它将始终包含相同的项。
$ python
>>> t = (1, [2, 3])
>>> id(t[1])
12371368
>>> t[1].append(4)
>>> id(t[1])
12371368
发布于 2012-03-18 12:38:59
元组是不可变的,因为元组本身不能扩展或收缩,而不是所有包含的项本身都是不可变的。否则,元组将变得单调乏味。
https://stackoverflow.com/questions/9755990
复制相似问题