我试图找到一种简单的方法来查看列表中是否有以下项目,但我的第一次尝试不起作用。除了编写一个函数来实现这一点之外,还可以使用任何简单的方法来检查多个项目中是否有一个项目在列表中。
>>> a = [2,3,4]
>>> print (1 or 2) in a
False
>>> print (2 or 1) in a
True
发布于 2009-04-11 15:22:08
>>> L1 = [2,3,4]
>>> L2 = [1,2]
>>> [i for i in L1 if i in L2]
[2]
>>> S1 = set(L1)
>>> S2 = set(L2)
>>> S1.intersection(S2)
set([2])
空列表和空集都为False,因此您可以直接将该值用作真值。
发布于 2009-04-11 16:30:39
托比亚斯你先我一步。我在想your solution的这个细微的变化
>>> a = [1,2,3,4]
>>> b = [2,7]
>>> any(x in a for x in b)
True
发布于 2009-04-11 16:12:42
也许更懒一点:
a = [1,2,3,4]
b = [2,7]
print any((True for x in a if x in b))
https://stackoverflow.com/questions/740287
复制相似问题