【发布时间】:2016-06-04 21:32:17
【问题描述】:
这里有 2 段 Python 代码:
t = (1, [2])
t[1] += [3]
和
t = (1, [2])
t[1].append(3)
第一部分首先修改了内部列表t[1],然后在尝试重新分配元组中的值时抛出异常。尽管t 的值实际上已经改变,但这种行为或多或少是可以理解的。但是第二段代码更改了元组而没有任何错误/异常/无论如何(据我所知,因为它更改了列表t[1] 而没有重新分配)。
问题是,这些东西不与元组的不变性相矛盾吗?
【问题讨论】:
标签: python list python-2.7 python-3.x tuples