Python机器学习原理与算法实现
上QQ阅读APP看书,第一时间看更新

1.9 Python集合

Python集合是任意不重复对象的整体,也是无序和无索引的集合,集合中的元素无法单独改变。在Python中,集合也以大括号({})的形式编写,但与字典不同的是,其元素可以为任意对象,而不一定为键-值对。

创建集合通过变量赋值的方式进行,集合可以执行交集与并集运算。示例如下,输入以下代码并逐行运行:

     set1 ={'宁德时代 300750','比亚迪 002594','赣锋锂业 002460'} # 生成集合set1
     set2 ={'国轩高科 002074','赣锋锂业 002460'}        # 生成集合set2
     set3=set1|set2        # 生成set1与set2的并集set3
     set3                  # 查看集合set3
     set4=set1&set2        # 生成set1与set2的交集set4
     set4       # 查看集合set4

可在IPython控制台看到如图1.51所示的运行结果。

图1.51 运行结果

此外,我们还可以调用第1.5.6节“与序列相关的内置函数”介绍的set(seq)函数,将序列seq转换为可变集合对象。但需要注意的是,如果序列是带有重复元素的列表,则多余的重复元素将被删除掉,以确保集合是任意不重复对象的整体。示例如下,输入以下代码并逐行运行:

     list1 =['宁德时代 300750','比亚迪 002594','赣锋锂业 002460','赣锋锂业 002460']  # 生成列表list1
     type(list1)             # 查看list1的类型
     set1=set(list1)         # 将列表list1转化为集合set1
     type(set1)        # 查看set1的类型
     set1              # 查看集合set1

可在IPython控制台看到如图1.52所示的运行结果。

图1.52 运行结果