所以我有数字列表,我想找到所有列表中存在的数字。如果可能,我宁愿不使用循环。
这是一个例子
a = [1, 2, 3, 4]
b = [2, 3, 4, 5, 6]
c = [3, 4, 5, 6, 10, 12]
df['A'] = [a, b, c]
Run Code Online (Sandbox Code Playgroud)
预计输出为
[3, 4]
Run Code Online (Sandbox Code Playgroud)
我的问题是,列表的数量没有给出,也没有固定。它可以是大约 20 个不同长度的列表(例如 [a, b, c, d, e, g, ..., l])
我已经看到使用 set(a) & set(b) & set(c) 的答案,但我不确定如何在我的情况下应用它。
sha*_*678 12
您可以使用地图和设置。交叉点:
>>> a = [1, 2, 3, 4]
>>> b = [2, 3, 4, 5, 6]
>>> c = [3, 4, 5, 6, 10, 12]
>>> elements_in_all = list(set.intersection(*map(set, [a, b, c])))
>>> elements_in_all
[3, 4]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5652 次 |
| 最近记录: |