欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python交并补_Python 集合的交差并补操作及方法

发布时间:2025/10/17 python 52 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python交并补_Python 集合的交差并补操作及方法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

1.集合的交差并补

intersection() 交集

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set1.intersection(set2)

print(res) #{'卢俊义'}

#简写

res = set1 & set2

print(res)

difference() 差集

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set1.difference(set2)

print(res)

# 简写

res = set1 - set2

print(res)

union() 并集

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set1.union(set2)

print(res)

# 简写

res = set1 | set2

print(res)

symmetric_difference() 对称差集 (补集情况涵盖在其中)

按位异或 , 两者不相同方为真,一个是1,一个是0 ,结果是True,两者一样是False

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set1.symmetric_difference(set2)

print(res)

# 简写

res = set1 ^ set2

print(res)

issubset() 判断是否是子集

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set1.issubset(set2)

print(res)

# 简写

res = set1 <= set2

print(res)

issuperset() 判断是否是父集

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set2.issuperset(set1)

print(res)

# 简写

res = set2 >= set1

print(res)

isdisjoint() 检测两集合是否不相交 不相交 True 相交False

set1 ={'卢俊义','花荣', '吴用'}

set2 ={'公孙胜','秦明','卢俊义'}

res = set1.isdisjoint(set2)

print(res)# False 代表相交;

2.集合的相关函数

set1 ={'卢俊义','花荣', '吴用'}

set1.add("宋江")

print(set1)#{'卢俊义', '吴用', '花荣', '宋江'}

#update() 迭代着增加

setvar.update("abc")

print(setvar)

clear() 清空集合

set1 ={'卢俊义','花荣', '吴用'}

set1.clear()

print(set1) #set()

pop() 随机删除集合中的一个数据

set1 ={'卢俊义','花荣', '吴用'}

res = set1.pop()

print(res) #卢俊义

print(set1) #{'花荣', '吴用'}

remove() 删除集合中指定的值(不存在则报错)

set1 ={'卢俊义','花荣', '吴用'}

res = set1.remove("吴用")

print(res)#None

print(set1)#{'花荣', '卢俊义'}

discard() 删除集合中指定的值(不存在的不删除 推荐使用)

set1 ={'卢俊义','花荣', '吴用'}

set1.discard("小小") #不存在不会报错

set1.discard("花荣")

print(set1)

3.冰冻集合

frozenset 可强转容器类型数据变为冰冻集合

冰冻集合一旦创建,不能在进行任何修改,只能做交叉并补操作

# 空的冰冻集合

fz = frozenset()

print(fz,type(fz))

lst = ["a",'c','b']

fz = frozenset(lst)

print(fz,type(fz))

#冰冻集合可遍历

for i in fz:

print(i)

#冰冻集合只做交差并补

fz1 = frozenset(["a",'c','b'])

fz2 = frozenset(('c','b','d'))

print(fz1 & fz2)

print(fz1 - fz2)

# fz1.add("cccc") error 不能添加或者删除,只做交差并补;

总结

以上是生活随笔为你收集整理的python交并补_Python 集合的交差并补操作及方法的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。