python - 将列表作为多个元素返回

标签 python set python-itertools

我正在使用幂集生成器来查看集合之间的交集。生成器返回集合的不同组合列表。我尝试了以下方法:

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

但是 g 是一个列表,而 set.intersection 不接受列表;它只需要多个元素,这些元素都是集合。

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

最佳答案

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

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

关于python - 将列表作为多个元素返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19254970/

相关文章:

python - 在打印相应值时跳过特定迭代的重复值 - 我的最终目标是将其写入 CSV 文件

python - 迭代多个可迭代对象的所有组合

python - Python 3.1 中的整数问题

python - 根据.CSV格式的AVL(GPS)数据创建伪GTFS数据集

python - 如何使装饰器函数成为类的一部分

python - 围绕字符 python 交换列表/字符串

linux - 使用 set -u 进行 bash 调试

c# - 当在 C# 中调用任何其他方法时,如何自动重置 bool 值?

python - tee'd 生成器上的多处理

python - 使用 itertools 按第二个值对连续元组进行分组