小编典典

如果在Python中我将一个列表放在一个元组中,是否可以安全地更改该列表的内容?

python

元组中的值只是对列表的引用,如果我更改列表中的值,那么一切仍然井井有条,对吗?我想确保,如果这样做,我不会开始遇到令人困惑的错误。


阅读 214

收藏
2020-12-20

共1个答案

小编典典

元组是不可变的,您不能更改其内容。

有清单

>>> x = [1,2,3]
>>> x[0] = 5
>>> x
[5, 2, 3]

与元组

>>> y = tuple([1,2,3])
>>> y
(1, 2, 3)
>>> y[0] = 5   # Not allowed!

Traceback (most recent call last):
  File "<pyshell#20>", line 1, in <module>
    y[0] = 5
TypeError: 'tuple' object does not support item assignment

但是如果我理解你的问题,说你有

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> t = (a,b)
>>> t
([1, 2, 3], [4, 5, 6])

可以 将内部列表修改为

>>> t[0][0] = 5
>>> t
([5, 2, 3], [4, 5, 6])
2020-12-20