我有一个字符串(逗号分隔的项目),我需要检查字符串中的任何项目(或拆分后的列表)是否存在于长字符串中。
我知道怎么做这样的长期风格,如:
people="first,second"
test='hello_first'
for i in people.split(","):
if i in test :
print 'found'
有没有更好的方法将for
和if
合并为一行?
e.g。使用any
或其他什么?
if any(x in people.split(",") for x in test) :
print 'found'
似乎无法打印'发现'。
答案 0 :(得分:2)
如果测试中有任何单词,请使用任何检查:
if any(word in test for word in people.split(",")):
# do whatever
您的逻辑错误,因为您正在检查测试是否在与第一个循环不匹配的单词的拆分列表中。