仅显示用于输入 yes 的消息,无论您输入什么

  • 本文关键字:显示 用于 yes 消息 python-3.x
  • 更新时间 :
  • 英文 :


当我运行此代码时,无论我输入什么,它总是显示为"我同意!任何帮助不胜感激!

Pizza_opinion = input("Does pizza taste good? ")
if Pizza_opinion == "Yes" or "yes":
    print("I agree! ")
elif Pizza_opinion == "No" or "no":
    print ("I disagree...?")

您假设条件检查Pizza_opinion是否等于"是"或等于"是",但它真正做的是检查Pizza_opinion是否等于"是"或字符串文字"是"是否为真,它总是如此。elif 条件也有同样的问题。

解决方案是重复使用"是"执行的相等性检查:

if Pizza_opinion == "Yes" or Pizza_opinion == "yes":

你没有正确使用条件 - 你不能使用这样的or(你可以,但它没有按照你的意思(。你基本上告诉了 Python if Pizza_opinion equals "Yes", or if "yes" evaluates to True (and it does) then print "I agree " .使用以下任一方式:

if Pizza_opinion == "Yes" or Pizza_opinion == "yes":
    print("I agree! ")
elif Pizza_opinion == "No" or Pizza_opinion == "no":
    print ("I disagree...?")

或:

if Pizza_opinion in ("Yes", "yes"):
    print("I agree! ")
elif Pizza_opinion in ("No", "no"):
    print ("I disagree...?")

或者简单地说:

if Pizza_opinion.lower() == "yes":
    print("I agree! ")
elif Pizza_opinion.lower() == "no":
    print ("I disagree...?")

最新更新