python 学习之路(集合)
集合本身无序,并且数据不重复,主要作用:
1.去重 列表转换成集合就能去重
2.做两组数据的 交集、差集、并集 (关系测试)
声明集合
list1 = [1,2,3,4,4,5,3,7,2]
list1 = set(list1)
取交集
list1 = [1,2,3,4,4,5,3,7,2]
list1 = set(list1)
list2 = set([2,33,44,5,66,7,77])
a = list1.intersection(list2)
list1 & list2
取并集
list1 = set([1,2,3,4,4,5,3,7,2])
list2 = set([2,33,44,5,66,7,77])
a = list1.union(list2)
list1 | list2
取差集
list1 = set([1,2,3,4,4,5,3,7,2])
list2 = set([2,33,44,5,66,7,77])
a = list1.difference(list2)
list2.difference(list1)
list1 - list2
子集 父集
list1 = set([1,2,3,4,4,5,3,7,2])
list2 = set([2,4 ,4])
list1.issubset(list2)
list1.issuperset(list2)
对称差集
list1 = set([1,2,3,4,4,5,3,7,2])
list2 = set([2,33,44,5,66,7,77])
a = list1.symmetric_difference(list2)
list1 ^ list2
判断是否没有交集
list1 = set([1,2,3,4])
list2 = set([5,6,7,8])
list1.isdisjoint(list2)
基本操作
添加
list1 = set([1,2,3,4])
list1.add(5)
print(list1)
list1.update([5,6,7,8])
删除
list1 = set([1,2,3,4])
list1.remove(1)
print(list1)
长度
len(list1)
判断 a 是否是 b 集合的成员
a in b
判断 a 是否不是 b 集合的成员
a not in b
浅复制
list1.copy()