我正在使用python3并遇到这个问题。说我有一个清单
L = ["money", "fame", "popularity"]
我想检查L
中是否有任何单词包含"pop"
。我知道如果L
是一个字符串,例如如果L = "I want to be popular"
,那么我可以做"pop" in l
,并返回布尔值。但是现在L
是一个列表,我怎么能检查这个列表中的任何单词是否包含"pop"
呢? (如果可能,不使用循环)
使用any()
为任何比赛案例返回True
:
any('pop' in x for x in L)
码:
L = ["money", "fame", "popularity"]
print(any('pop' in x for x in L))
# True
您可以使用具有lambda函数的过滤器
L = ["populate", "position", "popcorn"]
didContainPop = len(list(filter(lambda x: "pop" in x, L))) != 0
print(didContainPop)