我们不能在 python 中更新或修改元组。
我正在编写一个更新元组的代码。
为什么它没有给出任何错误?这是我的代码
tuple1=(1,'hello',5,7,8,)
tuple1=tuple1[1:3]*2
print tuple1
print tupele1[3]
为什么它显示输出没有任何错误?
输出:('你好',5,'你好',5)
5
我们不能在 python 中更新或修改元组。
我正在编写一个更新元组的代码。
为什么它没有给出任何错误?这是我的代码
tuple1=(1,'hello',5,7,8,)
tuple1=tuple1[1:3]*2
print tuple1
print tupele1[3]
为什么它显示输出没有任何错误?
输出:('你好',5,'你好',5)
5
您不是在更新元组,而是在创建一个具有不同值的新元组。
您没有改变元组,而是重新绑定绑定到它的名称。这不受 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
我们不能更新元组中的值,但是我们可以将引用的变量重新分配给元组。
*
不像你认为的那样。它乘以slice,而不是其内容。
tuple1[1:3] == ['hello', 5]
tuple1[1:3] * 2 == ['hello', 5, 'hello', 5]