Словари и циклы - PullRequest
       1

Словари и циклы

0 голосов
/ 27 января 2020

Я создал простой словарь с некоторыми странами и их населением. Кроме того, я добавил код для пользователя, чтобы ввести страну, и если это совпадение, код должен возвращать население из определенного словаря. Это делается до тех пор, пока пользователь не введет «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()

1 Ответ

2 голосов
/ 27 января 2020
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:, чтобы проверить, содержит ли словарь страну ввода. а если нет, то прочитайте вводные данные и напишите что-то вроде countryPop[ctry]=popIn, чтобы обновить словарь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...