12 Python基本数据类型---集合
1 集合的定义与特性
定义:集合是一个数学概念:由一个或多个确定的元素所构成的整体叫做集合。
集合中的元素有三个特征:
1.确定性(元素必须可hash)
2.互异性(去重)
3.无序性(集合中的元素没有先后之分),如集合{3,4,5}和{3,5,4}算作同一个集合。
注意:集合存在的意义就在于去重和关系运算
2 集合的创建常用操作
#1、创建
>>> iphone7 = {'lisi','zhangsan','libai','wangwu'}
>>> iphone8 = {'lisi','libai','xuhua','xiaoh'}
#2、交集
>>> iphone7.intersection(iphone8)
{'libai', 'lisi'}
>>> iphone7 & iphone8
{'libai', 'lisi'}
#3、差集
>>> iphone7.difference(iphone8)
{'zhangsan', 'wangwu'}
>>> iphone7 - iphone8
{'zhangsan', 'wangwu'}
#4、并集
>>> iphone8.union(iphone7)
{'lisi', 'wangwu', 'xiaoh', 'zhangsan', 'xuhua', 'libai'}
>>> iphone8 | iphone7
{'lisi', 'wangwu', 'xiaoh', 'zhangsan', 'xuhua', 'libai'}
#5、对称并集(只买了iphone7和iphone8的人)
>>> iphone8.symmetric_difference(iphone7)
{'wangwu', 'xiaoh', 'zhangsan', 'xuhua'}
>>> iphone7 ^ iphone8
{'wangwu', 'xiaoh', 'zhangsan', 'xuhua'}
set.isdisjoint(s) #判断两个集合是不是相交
set.issuperset(s) #判断集合是不是包含其他集合,等同于a>=b
set.issubset(s) #判断集合是不是被其他集合包含,等同于a<=b