Метод dict.get() значение по умолчанию для отсутствующих ключей

Опубликован: 26.09.2023 124

В словарях Python есть метод dict.get(), который возвращает значение ключа key, если ключ в словаре найден. Если ключа в словаре нет, то метод .get() возвращает заданное значение по умолчанию default.

Синтаксис: dict.get( key [, default] )

Если значение default не задано и ключ key не найден, то метод вернет значение None.

Основное преимущество использования метода dict.get() по сравнению с обычной операцией получения значения словаря по ключу dict[key] заключается в том, что метод dict.get() никогда не вызывает исключения KeyError если ключ не найден.

# получение значения если ключ в словаре найден
months = {1: 'январь', 2: 'февраль', 3: 'март'}
print(months[2])
февраль

# попытка получения значения для отсутствующего ключа
print(months[5])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 5

# получение значения для отсутствующего ключа методом dict.get()
print(months.get(5))
None

#  метод dict.get() с заданным значением по умолчанию default
print(months.get(5, 'Такого значения в словаре нет'))
Такого значения в словаре нет

Если при работе со словарем требуется не только безопасное извлечение значений по ключу, но и добавление в него отсутствующих ключей вместе со значениями, то более эффективным будет использование встроенного метода .setdefault().

Более подробно метод .setdefault() описан здесь.

Похожие посты

Генератор словарей (Dict comprehension)

Использование метода dict.setdefault() для эффективной работы со словарем

Сортировка словарей по значениям

Методы преобразования списка в строку и обратно

Комментариев нет.