检查字符串中是否有数组中的任何项目

时间:2016-05-11 22:11:14

标签: python

我有一个字符串(逗号分隔的项目),我需要检查字符串中的任何项目(或拆分后的列表)是否存在于长字符串中。

我知道怎么做这样的长期风格,如:

people="first,second"
test='hello_first'

for i in people.split(","):
    if i in test :
          print 'found'

有没有更好的方法将forif合并为一行?

e.g。使用any或其他什么?

if any(x in people.split(",") for x in test) :
    print 'found'

似乎无法打印'发现'。

1 个答案:

答案 0 :(得分:2)

如果测试中有任何单词,请使用任何检查:

if any(word in test for word in people.split(",")):
   # do whatever

您的逻辑错误,因为您正在检查测试是否在与第一个循环不匹配的单词的拆分列表中。