pie="I like pie"
banana="I like bananas"
cake="I like cake"
die=67
running = True
while running:
item = eval(input("Select your item: "))
if item == "die":
running = False
elif item !="die":
print(item)
else:
print("Invalid entry. try again")
我不完全确定如何理解我的要求,但我希望用户能够输入输入,然后搜索几百个变量的列表(这里只显示几个),然后显示如果它是一个变量。如果用户输入不是变量,我想要一个错误,再试一次消息。最后,如果用户输入“die”,则程序终止。
答案 0 :(得分:1)
你可以这样做:
output_dict = {
'pie': "I like pie",
'banana': "I like bananas",
'cake': "I like cake"
}
item = None
while item != 'die':
item = raw_input("Select your item:")
if item != 'die':
item = output_dict.get(item, None)
if item:
print item
else:
print("Invalid entry. try again")
答案 1 :(得分:0)
我认为你想要这样的东西,只需使用一个字典来保存你所有的变量
my_dict = {'pie':'I like pie',
'banana' : 'I like banana'
...
}
running = True
while running:
item = raw_input("select item:")
if item=='die':
running = False
elif item in my_dict:
print my_dict[item]
else:
print "try again"
只是关于你的代码的评论,eval(输入(...))不好,因为输入是eval(raw_input(..)),你不应该在这种情况下使用输入(因为eval) )如果我理解你要做什么,请尝试使用raw_input。
希望它有所帮助!