Курс Python → Создание словарей с defaultdict()

Класс defaultdict() из модуля collections в Python является удобным инструментом для создания словарей с значениями по умолчанию. Это особенно полезно, когда вам нужно избежать ошибок KeyError при обращении к несуществующему ключу. При использовании defaultdict() вы можете указать функцию, которая будет возвращать значение по умолчанию для каждого ключа.

Пример использования класса defaultdict() для создания словаря с количеством фруктов:


from collections import defaultdict

fruits = ['apple', 'banana', 'apple', 'orange', 'banana', 'apple']

fruit_counts = defaultdict(int)
for fruit in fruits:
    fruit_counts[fruit] += 1

print(fruit_counts)

В этом примере мы создаем словарь fruit_counts с помощью defaultdict(int), что означает, что по умолчанию для каждого ключа будет установлено значение 0. Затем мы перебираем список фруктов и увеличиваем счетчик для каждого вида фрукта. В результате мы получаем словарь, в котором ключами являются названия фруктов, а значениями — количество каждого вида фруктов.

Если бы мы использовали обычный словарь вместо defaultdict(), нам пришлось бы проверять наличие ключа перед увеличением счетчика, чтобы избежать ошибки KeyError. С использованием defaultdict() этот процесс упрощается и код становится более читаемым.

Таким образом, класс defaultdict() позволяет упростить работу с словарями в Python, особенно при работе с большим количеством данных или при необходимости установки значений по умолчанию для всех ключей. Используйте defaultdict() там, где это удобно и помогает сделать код более понятным и эффективным.

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

Автор урока

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

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

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

  1. Функции в Python
  2. Извлечение чисел из текста
  3. None в Python: использование и особенности
  4. Метод setdefault() в Python
  5. Распаковка аргументов в Python
  6. Списковые включения в Python
  7. Поиск наиболее частого элемента
  8. Python enumerate() для работы с индексами
  9. Метод getitem для доступа к элементам последовательности
  10. Модуль array: создание и использование массивов
  11. Получение ID процесса
  12. Изменения в обработке логических значений
  13. Удаление знаков препинания в Python
  14. Отображение HTML кода в Python
  15. Создание копии итератора
  16. Установка и использование Virtualenv
  17. Объединение коллекций в Python
  18. Декораторы в Python
  19. Импорт модулей в Python 3.12
  20. Поиск индекса элемента
  21. Создание пользовательской коллекции в Python
  22. Таймер обратного отсчета
  23. Запуск внешнего кода в Jupyter
  24. Проверка окончания строки с помощью str.endswith()
  25. Методы __repr__ и __str__ в Python
  26. Измерение времени выполнения кода
  27. Оператор Walrus в Python
  28. Метод __iand__ для пользовательских классов
  29. Генераторные функции в Python
  30. История Python
  31. Простой калькулятор Python
  32. Основы работы со списками
  33. Настройка логгера Logzero
  34. Форматирование чисел в Python
  35. Работа с прокси в Python
  36. Функции map, filter, reduce
  37. Метод join() для объединения элементов строки
  38. Генераторы в Python
  39. Оптимизация сравнения в Python
  40. Измерение времени выполнения кода
  41. Удаление элементов из списка в Python
  42. Имена объектов в Python
  43. Магические методы в Python
  44. Подсчет элементов в Python
  45. Применение функции к списку
  46. Форматирование строк в Python
  47. Замена элементов в списке с помощью генераторов списков
  48. Работа с множествами в Python

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