遇到运行时错误,但实际操作已成功执行

时间:2018-05-16 16:53:54

标签: python python-3.x python-2.x

我有一种非常奇怪的行为。

考虑以下情况:

>>> t = ([1],)
>>> t[0]
[1]
>>> t[0] += [2]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> t[0]
[1, 2]

我有两个问题:

  1. 为什么t[0] += [2]会失败?
  2. 如果分配失败,为什么列表会更新?
  3. 据我所知,这在Python 2.x和Python 3.x上都有发生。

0 个答案:

没有答案