python之路-08-集合
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之路-08-集合相关的知识,希望对你有一定的参考价值。
集合是一个无序的,不重复的数据组合,它的主要作用如下:
- 去重,把一个列表变成集合,就自动去重了
- 关系测试,测试两组数据之前的交集、差集、并集等关系
8.1集合操作
8.1.1常用操作
#!Author:lanhan
list_1 = [1,4,5,7,3,6,7,9]
list_1 = set(list_1)
print(list_1,type(list_1))
list_2 = set([2,6,0,66,22,8,4])
print(list_1,list_2)
list_3 = set([1,3,7])
#交集
print("交集",list_1.intersection(list_2))
print(list_1 & list_2)
#并集(去掉相同的)
print("并集",list_1.union(list_2))
print(list_2 | list_1)
#差集(在list_1里有的,在list_2里没有的)
print("差集",list_1.difference(list_2))
print(list_1 -list_2)
print("差集",list_2.difference(list_1))
print(list_2 -list_1)
#子集()
print("子集",list_3.issubset(list_1))
#父集()
print("父集",list_1.issuperset(list_3))
#对称差集(相互没有的)
print("对称差集",list_1.symmetric_difference(list_2))
print(list_1 ^ list_2)
###m没有交集则返回true
list_4 = set([5,6,8])
print("没有交集则返回真",list_3.isdisjoint(list_4))
8.1.2基本操作
#!Author:lanhan
#添加1项
list_4 = set([1,3,7])
list_4.add(‘110‘)
print(list_4)
#添加多项
list_4.update([120,130])
print(list_4)
#使用remove()可以删除一项
list_4.remove(7)
print(list_4)
#删除,如果没有值,不报错
print(list_4.discard("ddd"))
#set 的长度
print(len(list_4))
#测试1是否是list_4的成员
print(1 in (list_4))
#测试2是否不是list_4的成员
print(2 not in (list_4))
#浅复制
list_5 = list_4.copy()
print(list_5)
以上是关于python之路-08-集合的主要内容,如果未能解决你的问题,请参考以下文章