使用或在if语句中(Python)

时间:2018-01-26 16:30:42

标签: python if-statement conditional

我只是写一个简单的if语句。如果用户键入" Good!"第二行仅评估为true。 如果"太棒了!"键入它会执行else语句。我可以不使用或喜欢这个吗?我需要逻辑还是?

    weather = input("How's the weather? ")
if weather == "Good!" or "Great!": 
    print("Glad to hear!")
else: 
    print("That's too bad!")

1 个答案:

答案 0 :(得分:1)

你不能那样使用它。 or运算符必须有两个布尔操作数。你有一个布尔值和一个字符串。你可以写

weather == "Good!" or weather == "Great!": 

weather in ("Good!", "Great!"): 

特别是在python的情况下,非空字符串计算为True,所以

weather == "Good" or "Great":

永远是真的,因为"伟大"总是如此,这是一个难以发现的错误。