我似乎无法让用户输入在Python中的if,elif,else循环中工作

时间:2014-09-05 21:35:19

标签: python

所以我正在制定一个程序,基本上要求一个人是否想听一个笑话;如果他们说是,那么就会开个玩笑;如果他们拒绝,或停止/退出该计划将停止;如果他们不说是或否,它会给他们一个错误信息。然而,该程序似乎只是想继续开玩笑,无论他们输入什么。我将生成一个代码示例。

import sys

print("Want to hear a joke?")
answer = input()
if answer == "Yes" or "yes" or "y":
   print("Here is a joke")
elif answer == "No" or "no" or "n":
   sys.exit("Bye!")
else:
   print("Please input a different response.")

1 个答案:

答案 0 :(得分:1)

这不是你如何做条件

if answer == "Yes" or "yes" or "y": # this will always evaluate to true

改为执行此操作

if answer in ["Yes" ,"yes" , "y"]:
      print "Here is a joke"