输出生成是和否响应的打印答案。我想要它生成 一个答案为肯定,一个答案为否,如用户所述。
import time
import random
time.sleep(0)
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
print("Welcome to the zombie apocalypse simulator!")
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
print()
time.sleep(0)
print("You wake up in the backseat of an old 1995 suburu, shirtless and confused.")
time.sleep(0)
print("Looking out the dusty window, you can make out the skyline of a distant")
print("forgotten metropolis.")
print()
time.sleep(0)
def ask(question):
answer = input(question + " {y/n}")
return answer in ['Yes','YES','y', 'Y','yes', 'n', 'N', 'no', 'NO', 'No']
while ask("You see a backpack in the from seat of the car. Do you take it?"):
if ['Yes','YES','y', 'Y','yes']:
print("You look inside only to find a brown hoodie, a utility knife, a can of tuna")
print("and a half full water bottle.")
if ['n', 'N', 'no', 'NO', 'No']:
print("You leave the bag behind.")
break
答案 0 :(得分:1)
如果answer = 'YES'
那么
return answer in ['Yes', .. , 'No']
返回True
,否则False
。基本上,in
会告诉您列表是否包含给定元素。因此,在您的ask
函数中,如果用户输入了一个可能的答案,则返回True
值,这使得下一个while循环的行为类似于
# ask question, if answer is positive
while True:
# check if yes, do something
# else do something.
break
在代码中没有实际检查答案是肯定还是否的地方。因此,要相应地输出,请确保检查这些值。 (看看有问题的提示')