集合的使用

  • 集合:

特点:   1.无序

    2.没有重复数据

  • 列表转换为集合
list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合
print(list_1)

结果:{1, 3, 5, 6, 7, 9}

  • 交集intersection()
list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合
list_2 = set([2,33,44,5,6,9,77,55])
#交集
print(list_1.intersection())

运算符号显示:

print(list_1 & list_2)

结果:{9, 5, 6}

  • 并集union()
list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合
list_2 = set([2,33,44,5,6,9,77,55])
#并集
print(list_1.union(list_2))
运算符号显示:
print(list_1. | list_2)
结果:{1, 33, 3, 2, 5, 6, 7, 9, 44, 77, 55}

 

  • 差集difference()
list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合
list_2 = set([2,33,44,5,6,9,77,55])
#差集
print(list_1.difference(list_2))
print(list_2.difference(list_1))
运算符号显示:
 
print(list_1 - list_2)
print(list_2 - list_1)
 
结果: {1, 3, 7} {33, 2, 44, 77, 55}

 

  • 子集/父集issubset()/issuperset()
list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合
list_2 = set([2,33,44,5,6,9,77,55])
list_3 = set([1,3,5])
#子集/父集
print(list_1.issubset(list_2))#list_1是否是list_2的子集,是则True,否则False
print(list_1.issuperset(list_3))#list_3是list_1的父集,所以返回True
print(list_3.issubset(list_1))
print(list_1.issuperset(list_2))#list_1是否是list_2的父集,是则True,否则False

结果:
 

  False
  True
  True
  False

 

 

  • 对称差集symmetric_difference()
list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合
list_2 = set([2,33,44,5,6,9,77,55])
#对称差集
print(list_1.symmetric_difference(list_2))
运算符号显示:
 
print(list_1 ^ list_2)
结果: {33, 2, 1, 3, 7, 44, 77, 55}

 

  • isdisjoint()

 

list_1 = [1,3,5,6,7,3,6,9]
list_1 = set(list_1)#将列表转换为集合

list_3 = set([1,3,5])
#是否有交集,有则返回True,无则False
print(list_1.isdisjoint(list_3))

结果:
False

 

 

 

  • 集合增加值

 

list_1 = set([1,3,5])
#若集合没有这个值,则集合增加一项,否则不变
list_1.add(999)
#若集合没有这个值的,则增加到集合,若集合原来就存在的不变
list_1.update([1,33,44,66])
print(list_1)

 

 

 

  • 集合删除值 discard()

 

list_1 = set([1,3,5])
#删除
list_1.remove('2')#remove只能删除集合有的东西,若没有,则报错
list_1.discard("22")#集合存在该值,则能删除,若没有,则不操作
print(list_1)

 

posted @ 2017-11-30 21:30  雨之愿风  阅读(157)  评论(0编辑  收藏  举报