tuple元素不可变有一种特殊情况,当元素是可变对象时。对象内部属性是可以修改的!tuple的不可变限制只是在一个纬度上:元素的类型。实现理解,tuple的元素所保存的内容(数值或内存地址)是不允许修改的,但地址映射的对象自身是可以修改的。
>>> a =(1,[3,2])
>>> a[1][0]=1
>>> a
(1,[1,2])
>>> a[1].append(3)
>>> a
(1,[1,2,3])
>>>del a[1][2]
>>> a
(1,[1,2])
>>>del a[1]
Traceback(most recent call last):
File"", line 1,in
TypeError:'tuple'object doesn't support item deletion
>>> del a[1][1]
>>> del a[1][0]
>>> a
(1, [])
>>>