我们无法更新或修改python中的元组 我正在编写一个更新元组的代码。
为什么不给出任何错误? 这是我的代码
tuple1=(1,'hello',5,7,8,)
tuple1=tuple1[1:3]*2
print tuple1
print tupele1[3]
为什么显示输出没有任何错误?
输出:('你好',5,'你好',5)
5
答案 0 :(得分:4)
你没有更新元组,你正在创建一个具有不同值的新元组。
答案 1 :(得分:3)
你不是改变元组,你重新绑定绑定它的名字。这不受Python的限制。
>>> (1, 2, 3)[1] = 4
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> a = (1, 2, 3)
>>> a = 4
答案 2 :(得分:2)
我们无法更新元组中的值,但我们可以将引用的变量重新分配给元组。
答案 3 :(得分:0)
*
不符合你的想法。它是切片的倍数,而不是其内容。
tuple1[1:3] == ['hello', 5]
tuple1[1:3] * 2 == ['hello', 5, 'hello', 5]