python - 从列表中的列表中查找共同元素
问题描述
我有一个包含更多列表的列表(这就是它的外观https://pastebin.com/BW4B9gfa)。列表的数量不是恒定的。我需要创建另一个列表,其中仅包含主列表中所有列表中的元素。我做了这样的东西作为原型,但它不起作用:
def common_elements(list_of_lists):
lists = list_of_lists
common = lists[0].intersection(lists[1].intersection(lists[2].intersection(lists[3].intersection(lists[4].intersection(lists[5])))))
return common
我也看到这样的东西:
A = [1,2,3,4]
B = [2,4,7,8]
commonalities = set(A) - (set(A) - set(B))
但我不知道如何将它与更多的列表一起使用。
解决方案
如果你有一个集合列表,你可以简单地做,只需做一个集合列表(lists = [set(list) for list in lists])。
lists[0].intersection(*lists)
推荐阅读
- elixir - 苦艾酒中间件未在查询中应用/运行
- multithreading - 使用动态预定义的线程名称运行在 pytest-parallel 中
- spring - Spring JPA hibernate 持久化 RestFull Object @OneToMany 子项(删除、添加或更新)问题?
- c++ - 在 FreeBSD 上构建 libosmocore
- php - 带有 mtr traceroute 的 PHP exec 函数等待响应
- c# - 如何使用方法更新文本块
- android - 将多个流合并为一个
- reactjs - 如何使用来自多个表单的数据通过 react-admin 创建记录?
- python - 超时错误时杀死所有子进程但不杀死父进程
- .net - .NET Core 网站意外关闭