2016-12-31 26 views
0

我在基於用戶輸入的字典中顯示鍵的問題。每當我運行沒有hour -=1的代碼時,它只顯示'doce'當我試圖顯示用戶輸入的任何數字。如果我允許hour -= 1,它顯示'once'。我甚至嘗試將輸入轉換爲整數,但我仍然遇到相同的問題。感謝您提前幫助。Python:在顯示字典中的值時出現問題

conversion = {1: 'uno', 2: 'dos', 3:'tres', 4:'cuatro', 5: 'cinco', 6: 'seis', 7:'siete', 8:'ocho', 9:'nueve', 10: 'dies', 11: 'once', 12:'doce' } 
for hour in conversion: 
    hour -= 1 
    new_hour = conversion.get(hour) 
print (new_hour) 
+1

您的代碼沒有得到任何用戶輸入。 – BrenBarn

+1

你應該爲每一次迭代打印(new_hour)'。其實你只打印循環的最後一個值。並記住:字典沒有排序。 –

+0

我沒有顯示代碼的輸入部分,因爲我在段落中提到它,並且它是一個簡單的'hour = raw_input('enter hour:') –

回答

1

如果你想遍歷整個字典,那麼在for循環中寫print語句就可以了。

如果你想根據用戶的輸入鍵,顯示值:

key = int(input("please enter a key: ")) 
value = conversion[key] 
print(value) 

這將更有利於我們展示了完整的代碼,準確地解釋想在這裏做什麼。

+0

ahh是的,我看到我只是遍歷字典,而不是簡單地隔離單個值。我現在想通了 –