欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python学习笔记:set集合类型所有方法汇总

程序员文章站 2022-06-24 13:06:07
################################################## 集合的作用是:# 1、获得两个集合之间某种关系的集合(比如求两个集合的交集)# 2、计算集合之间的关系(比如判断是否交集)红色为常用重点方法 ############################ ......
#################################################
# 集合的作用是:
# 1、获得两个集合之间某种关系的集合(比如求两个集合的交集)
# 2、计算集合之间的关系(比如判断是否交集)

红色为常用重点方法
#################################################

Python学习笔记:set集合类型所有方法汇总

 

 

 





####### 列表转集合,去重 #######
list_1 = set([1,2,3,4,5,6,7,2,3])
list_2 = set([2,3,5,10])

####### 取得交集 #######

print("交集",list_1.intersection(list_2))
print("交集",list_1 & list_2)

####### 取得并集(加集) #######
print("合集",list_1.union(list_2))
print("合集",list_1 | list_2)


####### 取得差集(集合1里面有,集合2里面没有的) #######
print("差集",list_1.difference(list_2))
print("差集",list_1 - list_2)

####### 取得对称差集(两个集合中都没有的返回) #######
print("对称差集",list_1.symmetric_difference(list_2))
print("对称差集",list_1 ^ list_2)


####### 是不是子集 #######
list_2 = [7,2,3]
list_2 = set(list_2)
print("判断是不是子集",list_2.issubset(list_1))


####### 是不是父集 #######
list_1 = set([7,2,3,1,2,3])
list_2 =set( [7,2,3])
print("判断是不是父集",list_1.issuperset(list_2))



####### 判断是不是有交集,没有交集返回false #######
list_1 = set([7,2,3,1,2,3])
list_2 =set( [7,2,3])
print("判断是不是有交集",list_1.isdisjoint(list_2))

######################## 以下是增、删、改、查的操作 ##############################

####### 增 #######
list_1 = set([1,2,3,4,5,6])
list_1.add("111")
print("增一个项",list_1)
list_1.update([100,6,300])
print("增多个项,已经有的将不插入",list_1)
# list_1.copy() # 浅复制

####### 删 #######
list_1 = set([1,2,3,4,5,6])
list_1.remove(1) #删除某个成员,如果不是成员会报错
print("删除某个成员,如果不是成员会报错",list_1)
list_1.pop()
print("删除随机一个项",list_1)
#删除某个成员,如果不是成员不会报错,无论成功与否都返回none
print("删除某个成员,如果不是成员不会报错",list_1.discard(3))

####### 改 #######

# 从a中删除b中的所有元素后返回给a
list_1 = set([1,2,3,4,5,6])
list_2 = set([1,2])
list_1.difference_update(list_2)
print("从a中删除b中的所有元素",list_1)

# 用a和b的交集更新a
list_1 = set([1,2,3,4,5,6])
list_2 = set([1,2,100])
list_2.intersection_update(list_1)
print("用a和b的交集更新a",list_2)

# 用a和b的对称集更新a
list_1 = set([1,2,3,4,5,6])
list_2 = set([1,2,100])
list_1.symmetric_difference_update(list_2)
print("用a和b的对称集更新a",list_1)



####### 查 #######
list_1 = set([1,2,3,4,5,6])
print("集合的元素数量", len(list_1))
i = 1
print("测试x是否是y的成员", i in list_1)
i = 100
print("测试x是否不是y的成员", i not in list_1)