Python-集合的基本使用

来源:互联网 发布:php自学好找工作嘛 编辑:程序博客网 时间:2024/06/04 18:24

Python的集合是一种无序并且不重复的,接下来记录一下集合的最常见的几种用法:

交集

list_1 = set([1,2,3,4])list_2 = set([3,4,5,6])print(list_1.intersection(list_2))  #结果:[3,4]或者:print(list_1 & list_2)  #结果:[3,4]

并集

list_1 = set([1,2,3,4])list_2 = set([3,4,5,6])print(list_1.union(list_2)) # 结果:[1,2,3,4,5,6]或者:print(list_1 | list_2)  # 结果:[1,2,3,4,5,6]

差集

list_1 = set([1,2,3,4])list_2 = set([3,4,5,6])print(list_1.difference(list_2)) # 结果:[1,2]或者:print(list_1 - list_2)  # 结果:[1,2]

对称差集

list_1 = set([1,2,3,4])list_2 = set([3,4,5,6])print(list_1.symmetric_difference(list_2))   # 结果:[1,2,5,6]或者:print(list_1 ^ list_2)  # 结果:[1,2,5,6]

集合的判断

list_1 = set([1,2,3,4])list_2 = set([3,4])- 子集判断print(list_2.issubset(list_1))  # 结果:True,list_2是list_1的子集- 父集判断print(list_1.issupperset(list_2))   # 结果:True,list_1是list_2的父集- 判断连个集合是否没有交集,没有交集为Trueprint(list_1.isdisjoint(list_2))    # 结果:False

集合的增删

list_1 = set([1,2,3,4,5])- 增加list_1.add(999) # 增加元素,位置随机list_1.update([8,7,6])  # 增加元素- 删除list_1.pop()    # 删除任一元素,并返回该元素,集合为空将报错list_1.remove("2")    # 删除指定元素,若元素不在集合中,将报错list_1.discard("2") # 删除指定元素,若元素不在集合中,不会报错