问题描述
在 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的对面?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)