python 基础 集合

集合

集合是一个无序的,不重复的数据组合,它的主要作用如下:

  • 去重,把一个列表变成集合,就自动去重了
  • 关系测试,测试两组数据之前的交集、差集、并集等关系

交集 并集 差集 子集  对称差集 

list =[1,2,4,5,6,7,8,9,4,5]
list_1 =set(list)
print(list_1,type(list_1))
list_2 =set([66,22,33,11,4,6,8])
print(list_1,list_2)

# 交集
print(list_1.intersection(list_2))
print(list_1 & list_2)   #交集运算符&

#并集
print(list_1.union(list_2))
print(list_1 | list_2)  #并集运算符

#差集
print(list_1.difference(list_2))  #取出1有的,1列表里,在2列表没有的不取
print(list_1 - list_2)  #差集运算符
print(list_2.difference(list_1))  #取出2有的,2列表里,在1列表没有的不取
print(list_2 - list_1)

#子集
list_3 =set([1,2,7,])
print(list_3.issubset(list_1))     #issubset子集
print(list_1.issuperset(list_3))    #issuperset父子

#对称差集
print(list_1.symmetric_difference(list_2))  #把两个集合互相没有的都取出来
print(list_1 ^ list_2)

print("----------------------")
list_4 =set([5,8,7,9])
print(list_3.isdisjoint(list_4)) #两个集合没有交集输出true,有交集输出false
list_1 =set([1,2,4,5,6,7,8,9,4,5])
print(list_1,type(list_1))
list_2 =set([66,22,33,11,4,6,8])
print(list_1,list_2)

#添加一项
list_1.add(999)
print(list_1)

#添加多项
list_1.update([888,666,444])
print(list_1)

#删除
list_1.remove(888)
print(list_1)

#按顺序删除并返回删除的值
print(list_1.pop())
print(list_1.pop())
print(list_1.pop())
原文地址:https://www.cnblogs.com/mingerlcm/p/7921811.html