【问题标题】:Intersection of the lists in a list (list of lists) in python [duplicate]python中列表(列表列表)中列表的交集[重复]
【发布时间】:2017-04-25 08:55:14
【问题描述】:

我有一个列表列表,如下所示:

list = [[1,2,3],[2,3,4],[3,4,5],[3,5,6]]

我想在 python 2.7 中找到它们的交集,我的意思是

intersect_list = [3]

谢谢。

【问题讨论】:

  • 有代码了吗?
  • @cricket_007 我尝试在结果和列表的每个元素之间进行成对交集,但我认为这不是最佳方式,我应该在这里写吗?

标签: python python-2.7 list intersection


【解决方案1】:

首先,不要使用list 作为变量名——它隐藏了内置类。

接下来,这个就完成了

>>> a = [[1,2,3],[2,3,4],[3,4,5],[3,5,6]]
>>> set.intersection(*map(set,a))
{3}

map(set,a) 只是将其转换为集合列表。然后你只需解开列表并找到交叉点。

如果您确实需要列表形式的结果,只需使用 list(...) 包装调用

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-06
  • 2014-12-18
  • 2013-09-15
  • 2023-04-09
  • 1970-01-01
相关资源
最近更新 更多