Проверка с использованием метода get()
На этом этапе вы научитесь использовать метод get() для безопасного доступа к значениям словаря. Метод get() позволяет получить значение, связанное с ключом, и позволяет указать значение по умолчанию, которое будет возвращено, если ключ не существует. Это предотвращает аварийное завершение программы из-за исключений KeyError.
Продолжим использовать словарь, который мы создали на предыдущих этапах. Если у вас нет файла dictionary_keys.py, создайте его снова в директории ~/project со следующим содержимым:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
Теперь используем метод get() для получения значения, связанного с ключом "name". Добавьте следующий код в файл dictionary_keys.py:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
name = my_dict.get("name")
print(name)
Сохраните файл и запустите скрипт с помощью следующей команды в терминале:
python dictionary_keys.py
Вы должны увидеть следующий вывод:
Alice
Метод get() успешно извлек значение, связанное с ключом "name".
Теперь попробуем получить значение, связанное с ключом, который не существует, например, "country". Измените файл dictionary_keys.py следующим образом:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
country = my_dict.get("country")
print(country)
Сохраните файл и запустите скрипт снова:
python dictionary_keys.py
Вывод будет следующим:
None
По умолчанию метод get() возвращает None, если ключ не существует. Это предотвращает возникновение исключения KeyError.
Вы также можете указать значение по умолчанию, которое будет возвращено, если ключ не существует. Измените файл dictionary_keys.py следующим образом:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
country = my_dict.get("country", "Unknown")
print(country)
Сохраните файл и запустите скрипт:
python dictionary_keys.py
Вывод будет следующим:
Unknown
В этом случае, так как ключ "country" не существует в словаре, метод get() вернул указанное нами значение по умолчанию "Unknown".
Использование метода get() является рекомендуемой практикой при работе со словарями, так как оно позволяет элегантно обрабатывать случаи, когда ключ может не существовать, предотвращая ошибки и делая ваш код более надежным.