Python复习笔记——tuple

发布时间:2019-06-09 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Python复习笔记——tuple脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

最近把python的基础语法复习一下,发现tuple这个比较特殊,有几点需要注意下

1.tuple的每个元素值不能改变,如:

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

2.tuple的元素是list的时候,tuple是管不着list的,tuple只管每个元素的值不改变

>>> b=[1,2]
>>> a=(b,3)
>>> id(b)
4454662368
>>> id(a)
4454507512
>>> id(a[0])
4454662368

如上,当我再修改b的时候,a里面看到的是修改后的值

>>> b[0]=8
>>> a
([8, 2], 3)

但是我给b重新复制的话,b已经是指向了新的地址

>>> b=[4,5]
>>> id(b)
4454500256
>>> id(a[0])
4454662368
>>> a
([8, 2], 3)

对b的修改当然不会影响到a。

3.tuple可以用作dict的key,因为它是不可变的。但是tuple作为dict的key时有个限制——tuple的元素是可以哈希的。
一般是这样用的:

>>> c=(4,6)
>>> d={c:'adf'}

但是你不能这样用:

>>> l=[5,4]
>>> c=('dfdf',l)
>>> d={c:'adf'}
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'

脚本宝典总结

以上是脚本宝典为你收集整理的Python复习笔记——tuple全部内容,希望文章能够帮你解决Python复习笔记——tuple所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。