簡體   English   中英

字典和循環

[英]Dictionaries and Loops

我用一些國家和他們的人口創建了一個簡單的字典。 此外,我為用戶添加了代碼以輸入一個國家,如果匹配,代碼應該從定義的字典中返回人口。 這樣做直到用戶輸入“0”。 這是我現在的問題:我希望進一步讓程序向用戶顯示一條消息,指出人口未知,以防國家不屬於字典的一部分,並且在這種情況下讓用戶輸入人口。 例如,如果用戶輸入的是塞舌爾,我應該收到一條未知消息和輸入人口的提示。 最后,我想用輸入的國家(在我的示例中為塞舌爾)和人口的這些新值更新字典。

到目前為止我的代碼是

def main():
    countryPop = {'Vatican': 800, 'Tuvalu': 10200, 'Nauru': 11000, 'Palau': 17900,
                  'San Marino': 33420, 'Monaco': 38300, 'Marshall Islands': 55500}

    while True:
        ctry = input('Enter country:')
        population = countryPop.get(ctry)
        print(population)
        if ctry == '0':
            break


if __name__ == '__main__':
    main()
def main():
    countryPop = {'Vatican': 800, 'Tuvalu': 10200, 'Nauru': 11000, 'Palau': 17900,
                  'San Marino': 33420, 'Monaco': 38300, 'Marshall Islands': 55500}

    while True:
        ctry = input('Enter country:')
        population = countryPop.get(ctry)
        print(population)
        if ctry == '0':
            break
        elif ctry not in countryPop: #check if country is in dictionary
            popIn = input("Country Pop: ") #read country population
            countryPop[ctry]=popIn #update dictionary



if __name__ == '__main__':
    main()

基本上,您需要添加的是一個elif ctry not in countryPop:elif ctry not in countryPop:檢查字典是否包含輸入國家/地區。 如果沒有讀取人口輸入並寫一些類似countryPop[ctry]=popIn來更新字典。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM