Курс Python → Defaultdict в Python

Defaultdict — это подкласс встроенного типа словаря в Python, который позволяет задать значение по умолчанию для отсутствующих ключей. Это удобно, когда вы хотите избежать ошибок KeyError при обращении к несуществующему ключу.

Для использования defaultdict необходимо импортировать его из модуля collections. Затем можно создать defaultdict, указав тип данных для значений и значение по умолчанию. Например, defaultdict(int) создаст словарь, где отсутствующие ключи будут иметь значение 0.

from collections import defaultdict

# Создание defaultdict с типом int и значением по умолчанию 0
d = defaultdict(int)
d['a'] = 1
print(d['b'])  # Выводит 0, так как ключ 'b' отсутствует

Помимо типа данных и значения по умолчанию, можно также использовать функцию для создания значения по умолчанию. Например, defaultdict(list) создаст словарь, где отсутствующие ключи будут иметь пустой список.

from collections import defaultdict

# Создание defaultdict с типом list и значением по умолчанию []
d = defaultdict(list)
d['a'].append(1)
print(d['b'])  # Выводит [], так как ключ 'b' отсутствует

Использование defaultdict упрощает код и делает его более читаемым, особенно при работе с большими объемами данных или сложными структурами. Он предоставляет удобный способ управления значениями по умолчанию в словаре, что может быть полезно во многих ситуациях.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Магические методы в Python
  2. Логирование с Logzero
  3. Обратное распространение ошибки
  4. Проверка дублей в списке.
  5. Отделение звука от видео
  6. Управление доступом к модулю
  7. Переопределение метода __floordiv__
  8. Поиск индексов подстроки
  9. %pinfo: получение информации об объекте
  10. Реверс строки в Python
  11. Поиск частых элементов в списке
  12. Подсчет элементов с помощью Counter
  13. Список переменных с %who
  14. Работа с argparse
  15. Объединение списков с помощью zip
  16. Измерение времени выполнения
  17. Изменение IP-адреса в Python
  18. Переопределение метода __and__
  19. Получение текущей даты в Python
  20. Оптимизация памяти с помощью __slots__
  21. Объединение кортежей в Python
  22. Метод __getitem__ в Python
  23. Генераторы в Python
  24. Работа с атрибутом dict
  25. Работа с контекстными переменными
  26. Новшества Flask 2.0
  27. Улучшенные подсказки для импорта в Python 3.12
  28. Ключевое слово global в Python
  29. Расширение операции побитового «и» в Python
  30. Определение функций с необязательными аргументами
  31. Модуль antigravity: генерация координат
  32. Конкатенация строк с помощью join()
  33. Открытие и редактирование скриптов Python
  34. Запрос DELETE с библиотекой requests
  35. Возврат значений из генератора
  36. Философия Python
  37. Управление экспортом элементов
  38. Генераторы по генератору
  39. Подсчет частоты элементов с Counter
  40. Подписка на SelectelNews в Twitter
  41. Измерение времени выполнения кода
  42. Ускоренный импорт библиотек
  43. Установка пакета в Python
  44. Обработка исключений в Python
  45. Удаление дубликатов из списка

Marketello читают маркетологи из крутых компаний