小编Bal*_*Sun的帖子

更新元组中的列表

我只是在翻译中玩弄并碰到了一些我不理解的东西.当我创建一个列表作为元素之一的元组,然后尝试更新该列表时,会发生一些奇怪的事情.例如,当我运行这个时:

tup = (1,2,3,[4,5])
tup[3] += [6]
Run Code Online (Sandbox Code Playgroud)

我明白了:

TypeError: 'tuple' object does not support item assignment
Run Code Online (Sandbox Code Playgroud)

这正是我的预期.然而,当我再次引用元组时,我得到:

>>> tup
(1, 2, 3, [4, 5, 6])
Run Code Online (Sandbox Code Playgroud)

所以即使python引发异常,列表实际上也已更新.这是如何运作的?我无法想象我实际上想要做这样的事情,但我仍然想了解发生了什么.谢谢.

python

12
推荐指数
1
解决办法
647
查看次数

标签 统计

python ×1