2014-04-26 57 views
0

於是收拾東西,我寫一個程序,你可以輸入關鍵字到拿東西回來的更有效的方式,但使用「如果 - elif的,否則」語句的方法似乎並不像一個很有效的方法來做到這一點。有沒有更好的方法可以做到這一點?這裏有一些供參考的代碼:從字典

things = { 
    "word": "desc." 
    #So on and so forth 
} 

def check(): 
    find = raw_input("> ") 
    if find == "word": 
     print things["word"] 
     get_check() 
    #So on and so forth with the elif's and else's 
    elif find == "exit": 
     print "" 

def get_check(): 
    check() 

check() 

如果沒有更有效的方法來做到這一點,請告訴我。 (我認爲那會有。)另外,對於標題感到抱歉,我不知道我應該使用很多技術術語。所以請隨意編輯標題。

回答

1

你可以找出是否有鍵使用in是在一本字典:

if find in things: 
    print things[find] 

或者只是使用dict.get返回與鍵或None關聯的值:

print things.get(find) 
+0

當我重新編寫密鑰時,我會替換密鑰? –

+0

...無論你想用作鑰匙!從你的例子中,'find'。 – jonrsharpe

1
if find == 'exit': 
    # Exit 
else: 
    item = things.get(find) 
    if item is not None: 
    # Do something with item 
    else: 
    # find not found 
+0

什麼你的意思是「做某件事嗎?」 –

+0

'item'是字典中的值。現在你必須做一些事情。 –