wor*_*rer -1 python if-statement
我有这个代码:
Split = Message.Body.split()
split = Split
if 'a' or 'b' or 'b' in split:
time.sleep(2)
print '1'
elif 'c' or 'd' in split:
time.sleep(2)
print '2'
elif 'e' or 'f' in split:
time.sleep(2)
print '3'
else:
time.sleep(2)
print '4'
Run Code Online (Sandbox Code Playgroud)
我已经使用split将单词与我的消息分开,我想要收到某个消息来打印某个单词,但现在它只打印1而不管输入.
这就是问题:
>>> 'a' or 'b' or 'b'
'a'
Run Code Online (Sandbox Code Playgroud)
这是解决方案:
if 'a' in split or 'b' in split:
Run Code Online (Sandbox Code Playgroud)
或者,如果您有许多信件要检查:
if any(x in split for x in 'ab'):
Run Code Online (Sandbox Code Playgroud)
在这种情况下效果更好:
if any(x in split for x in 'abcdefg'):
Run Code Online (Sandbox Code Playgroud)