我正在尝试合并一个集合中定义的集合,以下是我的代码:
a = frozenset([1,3,4])
b = frozenset([1,2,3,4,5])
s = set()
s.add(a)
s.add(b)
merged = set(itertools.chain.from_iterable(s))
在实践中,s
可能包含许多个 frozensets。有更好的方法吗?感觉像是一个 reduce
情况,但是...
from functools import reduce
merged = reduce(|, s)
无法工作。
另外
merged = reduce(set.add, s)
这不起作用是因为s
的元素是frozensets。
|
作为一个单独的函数被称为operator.or_
。 - Josh Lee