【发布时间】:2014-06-17 18:17:22
【问题描述】:
我有两个列表,例如:
a = ["mail1", "mail2", "mail3", "mail4"]
b = ["mail2", "mail5"]
我想检查b 列表中的任何元素是否也出现在a 列表中。
我想知道是否有一种方法(以及它是什么)可以在没有 for 循环的情况下执行此操作。
我还想知道如何创建一个布尔值列表,其中每个值都是值a[i] 和b[i] 比较的结果,类似于:
[z for i, j in zip(a, b) z = i == j] # (just with the right syntax)
z 将是 1 如果在某个地方 i == j,所以我可以检查数组是否有任何“真”值。
【问题讨论】:
-
请提一下你用python试过什么?一些代码会很方便!
-
请在每个帖子中保留 一个 问题。使用sets 回答您的第一个问题。您的第二个几乎就在那里:
[i == j for i, j in zip(a, b)],但这将限于两个列表中最短的长度。例如。它会返回[False, False]。