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