集合操作:
集合是一个无序的,不重复的数据组合,它的主要作用如下:
去重:把一个列表变成集合,就自动去重了
关系测试:测试两组数据之前的交集、差集、并集等关系
list_1 = [1,4,5,6,7,7,5,4]
list_1 = set(list_1) #set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
list_2 = set([2,5,6,2,22,6,1])
print(list_1,list_2)
#交集
print(list_1.intersection(list_2))
#并集
print(list_1.union(list_2))
#差集
print(list_1.difference(list_2)) #l里面有2里面没有的
#对称差集
print(list_1.symmetric_difference(list_2))#去掉重复的
#子集
list_3 = set([1,4])
print(list_3.issubset(list_1))
#父集
print(list_1.issuperset(list_3))
print("-------------")
list_4 = set([2,3])
print(list_3.isdisjoint(list_4)) #没有交集返回true
#运算符
#交集
list_1 & list_2
#union
list_1 | list_2
#different
list_1 - list_2
#对称差集
list_1 ^ list_2
#基本操作
list_1.add(9999) #添加
list_1.update([9,88,4])#添加多项
#使用remove()可以删除一项
list_1.remove(9)
list_1.discard(9) #该方法不同于 remove() 方法,因为 remove() 方法在移除一个不存在的元素时会发生错误,而 discard() 方法不会。
print(list_1.pop()) #随机删除一个值
len(list_1) #集合的长度
9 in list_1 #测试9是否是list_1的成员
9 not in list_1 #测试9是否不是list_1的成员
list_5 = list_1.copy() #返回浅复制后的新列表