我试图让程序从列表中随机打印一个项目,然后程序要求用户输入有真假条件的一些信息,然后将用户返回到开始位置他们可以选择一个新的'
我遇到的问题是,只有' listone'正在被选中,并且由于所有这些帮助,它不是随机列表选择。
import random
questlist = ['questone', 'questtwo', 'questthree']
random.choice(questlist)
def start():
print('Hi, welcome to the race track')
pick = input('pick a track')
displaytrack()
def displaytrack():
tracks = ('track 1', 'track 2', 'track 3')
print(tracks)
if 'questone':
ans = input('how old are u')
if ans == 3:
print('Correct')
print('Thanks for using')
start()
else:
print('Incorrect')
start()
if 'questtwo':
ans = input('How nice are u')
if ans == 'very':
print('Correcterino')
print('Thanks for using')
start()
else:
print('Wrongerino')
start()
if 'questthree':
ans = input('How tall are u')
if ans == 'pretty':
print('sixfoot')
print('Thanks for using')
start()
else:
print('no feet')
start()
答案 0 :(得分:1)
您需要存储选择的输出并在条件表达式中使用它:
choice = random.choice(questlist)
替换
if 'questone':
与
if choice == 'questone':
等等,否则,if
表达式只是检查字符串'questone'
是否为None
,并且它将始终评估为True
。
答案 1 :(得分:0)
使用此代替您当前的第三行
PC_Choice = random.choice(questlist)
然后使用:if PC_Choice == questone
像这样:if PC_Choice == 'questone':
ans = input('how old are u')
if ans == 3:
print('Correct')
print('Thanks for using')
start()
else:
print('Incorrect')
start()
然后改变另外两个,这将使其随机选择