gpt4 book ai didi

python - 获取集合列表的交集

转载 作者:太空狗 更新时间:2023-10-29 19:32:27 24 4
gpt4 key购买 nike

我希望 python 获取集合列表的交集。

例如,我有一个函数返回 s 以下集合列表:

[set(0,1,3), set(1,3)]

如您所见,它的交集是集合 {1,3}。我怎样才能让python获得交集?到目前为止我一直在做的是遍历列表。但是我看不到路口。

解决方案应该能够处理 n 个元素的集合列表,而不仅仅是一对。

有什么想法吗?

欢迎理解

顺便说一句,为什么集合呈现为 set([]),换句话说,为什么不只是用大括号?

最佳答案

使用set.intersection:

>>> lis = [set((0,1,3)), set((1,3))]
>>> set.intersection(*lis)
set([1, 3])

联合使用set.union:

>>> set.union(*lis)
set([0, 1, 3])

如果performance然后使用这个:

>>> from itertools import islice
>>> set.intersection(set(lis[0]), *islice(lis, 1, None))
set([1, 3])

关于python - 获取集合列表的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17495257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com