好的,下面的代码执行了一些我不希望它执行的操作。如果你运行这个程序,它会问你“你好吗?” (很明显),但是当您回答适用于 elif 语句的问题时,我仍然会得到 if 语句的响应。这是为什么?
talk = raw_input("How are you?")
if "good" or "fine" in talk:
print "Glad to here it..."
elif "bad" or "sad" or "terrible" in talk:
print "I'm sorry to hear that!"
请您参考如下方法:
问题是 或 运算符在这里没有执行您想要的操作。您真正要说的是 如果“good”的值为 True 或“fine”正在讨论中。 “good”的值始终为 True,因为它是一个非空字符串,这就是该分支总是被执行的原因。
