将列表作为多个元素返回

时间:2013-10-08 18:01:10

标签: python set itertools

我正在使用电源设置生成器来查看集合之间的交叉点。生成器返回不同组合的列表。我尝试过以下方法:

overlapped = [set.intersection(g) for g in powerset(listOfSets)]

但是g是一个列表,而set.intersection没有列表;它只需要多个元素都是集合。

是否有内置函数,或将n元素列表分解为n个单独的返回元素的方法?

1 个答案:

答案 0 :(得分:4)

您可以使用argument unpacking*运算符)来完成此操作。

>>> foo = [set([1,2]), set([2,3]), set([2,4])]
>>> set.intersection(*foo)
set([2])