我想获取两个列表并找到出现在两个列表中的值。
a = [1, 2, 3, 4, 5]
b = [9, 8, 7, 6, 5]
returnMatches(a, b)
例如,将返回 [5]
。
原文由 tehryan 发布,翻译遵循 CC BY-SA 4.0 许可协议
我想获取两个列表并找到出现在两个列表中的值。
a = [1, 2, 3, 4, 5]
b = [9, 8, 7, 6, 5]
returnMatches(a, b)
例如,将返回 [5]
。
原文由 tehryan 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用 set.intersection() ,它快速且可读。
>>> set(a).intersection(b)
set([5])
原文由 lutz 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
不是最有效的方法,但到目前为止最明显的方法是:
如果顺序很重要,你可以用这样的列表理解来做到这一点:
(仅适用于大小相等的列表,这意味着顺序重要性)。