python - 单词中的多个字符串

时间:2015-04-23 15:44:41

标签: python python-2.7

我试图这样做 -

word = 'hello'

if 'a' or 'c' in word:
    continue
elif 'e' in word:
    continue
else:
    continue

只有在我没有或没有的情况下才有效。字符串是一个单词。

4 个答案:

答案 0 :(得分:6)

此:

if 'a' or 'c' in word:
    continue

相当于:

if ('a') or ('c' in word):
    continue

'a'在布尔上下文中始终为True,因此始终会因短路而执行continue

解决方案:

if any(c in word for c in ('a', 'c')):
    continue

答案 1 :(得分:1)

if 'a' or 'c' in word:替换为if 'a' in word or 'c' in word。通常,您必须为正在测试的每个字符提供in word。您也可以使用any,但由于您的if很简单,因此您只需使用上述格式即可。

答案 2 :(得分:1)

1) 它应该是if 'a' in word or 'c' in word:

2)continue会引发SyntaxError,因为你没有在循环中使用它。如果您不执行任何操作,则可以使用pass以外的continue

答案 3 :(得分:0)

您可以使用any内置函数,如下所示:

any(i in ('a', 'c') for i in word)