2017-05-27 91 views
-1

我有一本特定项目的字典。我想接受来自用户的键输入并显示相应的项目。但是,如果用户输入字典中未定义的错误键,则会引发键错误异常。如何有效地处理python中的关键错误异常?

我想要代码返回到行结束执行用户输入命令写入的位置,如果发生密钥错误异常。

我已经使用try except语句但显示错误。请帮我解决这个问题。

下面是我的代码:

a={'name':'pav','q1':'y','age':26} 
try: 
    k=input() 
    print (a[k]) 
except KeyError: 
    continue 
+0

您需要('while或'for')循环来继续。你是?究竟是什么例外? – jonrsharpe

回答

0

还有,如果你不希望使用一个尝试,除了

只需使用dict.get(键)如果该键存在,它更简单的方法返回其值否则将返回None,你可以简单地检查值:

key=input() 
value = dict.get(key) 

while value == None: 
    key=input() 
    value = dict.get(key) 

print value 
0

这可以通过两种方式来实现,通过设置的尝试限制次数或无限循环。

下面是3个尝试限制的示例,您可以使用while循环代替无限循环。

a={'name':'pav','q1':'y','age':26} 

for i in range(3): 
     k = input() 
     if k in a: 
      print(a[k]) 
      break 
     else: 
      print('Please enter the valid value')