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

如果你认为集合很“酷”,那么它们最近的改变会更酷。在Python 3.0中,我们仍然使用集合内置函数来创建集合对象,但是Python 3.0也添加了新的集合常量形式。在Python 3.0中,如下的形式是等同的:

set([1,2,3,4]) # Built-in call

{1,2,3,4} # 3.0 set literals

集合的项是无序的、唯一的、不可改变的,因此,它们的行为和字典的键很像,相当于一个只有键而没有值的字典。

实际上,不管如何创建集合,Python 3.0都使用新的常量格式来显示它。新的常量便于初始化具有已知结构的集合:

C:\Misc> c:\python30\python

>>> set([1,2,3,4]) # Built-in: same as in 2.6

{1,2,3,4}

>>> set('spam') # Add all items in an iterable

{'a','p','s','m'}


>>> {1,2,3,4} # Set literals: new in 3.0

{1,2,3,4}

>>> S = {'s','p','a','m'}

>>> S.add('alot')

>>> S

{'a','p','s','m','alot'}

前一篇文章中所讨论的所有集合处理操作在Python 3.0中都同样有效,但是结果的显示有所不同:

>>> S1 = {1,2,3,4}

>>> S1 & {1,3} # Intersection

{1,3}

>>> {1,5,3,6} | S1 # Union

{1,2,3,4,5,6}

>>> S1 - {1,3,4} # Difference

{2}

>>> S1 > {1,3} # Superset

True


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

python系列教程67_人工智能