集合的定义
集合可以存放不同的数据类型,需要注意的是,集合里的元素是不可以重复的,并且集合是无序的。
定义一个集合的方法:
集合名 = {元素1,元素2,元素3....}
集合中可以存放元组,但不可以存放列表
如何定义一个空集合?
集合名 = set([])
注意:如果输入 s = {}的形式定义的不是一个空集合,它的类型是一个字典。
使用这样的方法不仅可以定义一个空集合,还可以把一个,列表转换成空集合。
集合的特性
我们前面提到,集合里面的元素是不重复的,并且集合是无序的,所以集合与列表和元组有很大的区别,集合不支持索引,切片,重复和连接,只支持成员操作符和迭代。
成员操作符
元素 in 集合名
同样的,在集合内的元素返回一个True,否则返回一个False。
迭代
集合内的元素可以通过for循环遍历。
在遍历的时候还可以使用枚举。
集合元素的增加和删除
增加元素
增加一个元素:
集合名.add(需要增加的元素)
这里注意,增加的元素只能是一个。
增加多个元素:
集合名.update({元素1,元素2,元素3...})
删除元素
1.集合名.pop()
删除一个元素,并且这个删除的元素可以保存,这种方法不可以删除指定元素。
2.集合名.remove(元素)
删除指定元素,这个删除的元素不会被保留下来。
并集,交集,差集
并集
求交集的两种方法:
1.集合1.union(集合2)
2.集合1|集合2
交集
求交集的两种方法:
1.集合1.intersection(集合2)
2.集合1&集合2
差集
集合1对集合2的差集
集合1.difference(集合2)
对等差分(并集-交集)
集合1对集合2的对等差分
集合1.symmetric_difference(集合2)
如何判断一个集合是否为另一个集合的子集
判断集合2是否为集合一个的子集,如果是,返回一个True,否则返回False
1.集合1.issuperset(集合2)
s1是s2的子集,f返回一个True
判断集合1是否为集合2的子集,如果是,返回一个True,否则返回False
集合1.issubset(集合2)
判断两个集合是否不相交
如果集合1和集合2不相交,返回一个True,否则返回一个False
集合1.isdisjoint(集合2)
这两个集合有相交的部分,返回一个False。