Python 如何检查变量,如果无效则返回错误
我不完全确定如何理解我的要求,但我希望用户能够输入一个输入,然后搜索几百个变量的列表(这里只显示了几个),然后显示变量(如果是一个)。如果用户输入不是一个变量,我想要一个错误,请重试消息。最后,如果用户输入“die”,那么程序将终止。我想您需要这样的东西,只需使用dict保存所有变量即可Python 如何检查变量,如果无效则返回错误,python,if-statement,eval,Python,If Statement,Eval,我不完全确定如何理解我的要求,但我希望用户能够输入一个输入,然后搜索几百个变量的列表(这里只显示了几个),然后显示变量(如果是一个)。如果用户输入不是一个变量,我想要一个错误,请重试消息。最后,如果用户输入“die”,那么程序将终止。我想您需要这样的东西,只需使用dict保存所有变量即可 pie="I like pie" banana="I like bananas" cake="I like cake" die=67 running = True while running: ite
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")
只是对代码的一个注释,eval(input(…)并不好,因为input是eval(raw_input(…)),在这种情况下,您不应该使用input(因为eval)。如果我理解您试图执行的操作,请尝试使用raw_input
希望有帮助 您可以这样做:
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
?为什么?看着这段python代码,我的眼睛很痛。这是python代码永远不应该导致的事情!:)使用dict而不是独立变量!
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")