Python 查找集合列表中所有集合中出现的元素

Python 查找集合列表中所有集合中出现的元素,python,set,set-intersection,Python,Set,Set Intersection,我有一个n整数集列表,表示为lst=[S1,S2,S3…Sn],我想找到所有集合的交集 有没有一种最佳的方法可以做到这一点?编辑:误读,认为您有多个数字列表,通常会询问如何找到所有列表中的数字。不过,我会将原始答案保留在下面,因为有些人仍然觉得它在某种程度上有所帮助 是的,它被称为集合交集,可用于集合数据类型 演示: 如果当前数据存储在列表中,则将其转换为集合只需将列表传递给set()构造函数即可: >>> numbers = [2, 7, 9, 10] >>&g

我有一个
n
整数集列表,表示为
lst=[S1,S2,S3…Sn]
,我想找到所有集合的交集


有没有一种最佳的方法可以做到这一点?

编辑:误读,认为您有多个数字列表,通常会询问如何找到所有列表中的数字。不过,我会将原始答案保留在下面,因为有些人仍然觉得它在某种程度上有所帮助


是的,它被称为集合交集,可用于集合数据类型

演示:

如果当前数据存储在列表中,则将其转换为集合只需将列表传递给
set()
构造函数即可:

>>> numbers = [2, 7, 9, 10]
>>> set(numbers)
{2, 7, 9, 10}

但是,请记住,如果列表包含重复项,则该信息将丢失,并且每个重复的元素在生成的交叉点中只出现一次。

编辑:误读,认为您有多个数字列表,通常会问如何找到所有列表中的数字。不过,我会将原始答案保留在下面,因为有些人仍然觉得它在某种程度上有所帮助


是的,它被称为集合交集,可用于集合数据类型

演示:

如果当前数据存储在列表中,则将其转换为集合只需将列表传递给
set()
构造函数即可:

>>> numbers = [2, 7, 9, 10]
>>> set(numbers)
{2, 7, 9, 10}
但是,请注意,如果列表包含重复项,则该信息将丢失,并且每个重复的元素在结果交集中只出现一次。

如果您有一个列表集,您可以通过以下方式轻松获得它们的交集:

set.intersection(*lst)
这将生成一个新集合,其中仅包含所有集合之间通用的值:

>>> lst = [{1, 2, 3}, {3, 5}, {2, 3}]
>>> set.intersection(*lst)
{3}
如果您有一个列表集,则可以通过以下方式获得它们的交集:

set.intersection(*lst)
这将生成一个新集合,其中仅包含所有集合之间通用的值:

>>> lst = [{1, 2, 3}, {3, 5}, {2, 3}]
>>> set.intersection(*lst)
{3}

那么您是在寻找交集(仅那些出现在所有集合中的整数)?或者您正在查找并集(所有集合中的所有唯一整数)?交点?您正在查找交点(仅查找所有集合中出现的那些整数)?或者你在寻找并集(所有集合中的所有唯一整数组合)?交集这并不能解决当前的问题:OP已经有集合,但它们有一个任意长度的集合列表。你需要将这一点应用到列表中的所有集合。嗯,我显然错过了这一点,我认为OP有数字列表,并希望找到所有数字中都存在的数字。这并不能解决当前的问题:OP已经有集合,但它们有任意长度的集合列表。你需要把这个应用到列表中的所有集合。嗯,我显然错过了这个,我认为OP有数字列表,并且想要找到所有数字中存在的数字。