声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好地理解AI技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写,所以不如我的AI技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!PS:看不懂本篇文章的同学请先看前面的文章,循序渐进每天学一点就不会觉得难了!

集合是强大而灵活的对象,但是,它们在Python 3.0和Python 2.6中都有一个限制,我们需要铭记,集合只能包含不可变的对象类型。因此,列表和字典不能嵌入到集合中,但是,如果你需要存储复合值的话,元组是可以嵌入的:

>>> S

{1.23}

>>> S.add([1,2,3]) # Only mutable objects work in a set

TypeError: unhashable type: 'list'

>>> S.add({'a':1})

TypeError: unhashable type: 'dict'

>>> S.add((1,2,3))

>>> S # No list or dict,but tuple okay

{1.23,(1,2,3)}



>>> S | {(4,5,6),(1,2,3)} # Union: same as S.union(...)

{1.23,(4,5,6),(1,2,3)}

>>> (1,2,3) in S # Membership: by complete values

True

>>> (1,4,3) in S

False

例如,集合中的元组可以用来表示日期、记录、IP地址等。


我的微信公众号是“人工智能知识分享”

python系列教程68_元组