2017-10-18 147 views
-3

我要求用戶輸入一個字符串,該字符串應該是另一種語言中字典9it鍵的單詞的含義)。我如何將它與同一個密鑰的價值進行比較? 這是我的一段代碼:如何比較用戶的輸入和字典的值

slownik ={ 

    "我":"ja", 
    "你":"ty", 
    "他":"on" 
} 
for key in slownik: 
    print ('Do you know the meaning of this character', key, '?') 
    podane_znaczenie = input ('Meaning: ') 
    if podane_znaczenie == _______: 
     print ('Yes!') 
     continue 
+2

你到目前爲止嘗試過什麼? – bfontaine

+0

顯示一些代碼爲方向 – mnagel

+0

請將此添加到問題和閱讀[本頁](https://stackoverflow.com/help/mcve)關於如何問我們的網站。歡迎:) – bendl

回答

0

在Python,鍵值對可以被視爲元組。這可讓您通過一本字典在一個非常方便的方式循環:

for key, value in my_dict: 
    print(key) 
    print(value) 

使用這種方法,我們就可以在你的代碼像這樣缺少的空間填寫:

for key, value in slownik: 
    print ('Do you know the meaning of this character', key, '?') 
    podane_znaczenie = input ('Meaning: ') 
    if podane_znaczenie == value: 
     print ('Yes!') 
     continue 

此外,雖然你沒」請確切地說,這個代碼片段中不需要continue聲明。因爲之後沒有更多的代碼,循環將繼續在自己的:)

0

您訪問dictionarys的值與dictname[key],所以在你的代碼將是

if podane_znaczenie == slownik[key]: 
    print ('Yes!') 
2

你只需要對字典的價值

if podane_znaczenie == slownik[key]: 

你也可以把它寫成

for key, value in slownik.items(): 
    print ('Do you know the meaning of this character', key, '?') 
    podane_znaczenie = input ('Meaning: ') 
    if podane_znaczenie == value: 
     print ('Yes!') 
     continue 

PS:continue這裏不需要

+0

非常感謝你!有用 :) – ksenialke