Opposite of set.intersection in python?(python中set.intersection的对面?)
问题描述
在 Python 中,您可以使用 a.intersection(b)
来查找两个集合共有的项目.
In Python you can use a.intersection(b)
to find the items common to both sets.
有没有办法做到 disjoint 与此相反的版本?a
和 b
不共有的项目;a
中的唯一项与 b
中的唯一项联合?
Is there a way to do the disjoint opposite version of this? Items that are not common to both a
and b
; the unique items in a
unioned with the unique items in b
?
推荐答案
你在寻找对称差;仅出现在集合 a 或集合 b 中的所有元素,但不能同时出现:
You are looking for the symmetric difference; all elements that appear only in set a or in set b, but not both:
a.symmetric_difference(b)
来自 set.symmetric_difference()
方法文档:
From the set.symmetric_difference()
method documentation:
返回一个新集合,其中包含集合或其他中的元素,但不能同时包含两者.
Return a new set with elements in either the set or other but not both.
如果 a
和 b
都是集合,您也可以使用 ^
运算符:
You can use the ^
operator too, if both a
and b
are sets:
a ^ b
而 set.symmetric_difference()
为 other 参数采用任何可迭代对象.
while set.symmetric_difference()
takes any iterable for the other argument.
输出等价于(a | b) - (a & b)
,两个集合的并集减去两个集合的交集.
The output is the equivalent of (a | b) - (a & b)
, the union of both sets minus the intersection of both sets.
这篇关于python中set.intersection的对面?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:python中set.intersection的对面?
基础教程推荐
- 用于分类数据的跳跃记号标签 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 筛选NumPy数组 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01