Курс 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. Работа с эмодзи в Python
  4. Вычисление времени выполнения
  5. Обход элементов в Python
  6. Метод join() для объединения строк
  7. Отладка в Python
  8. Функция zip() в Python
  9. Параллельные вычисления в Python
  10. Библиотека sh: использование команд bash в Python
  11. Динамическая типизация в Python
  12. Создание словаря и множества
  13. Возвращение нескольких значений
  14. Избегание изменяемых аргументов
  15. Метод __irshift__ для Python
  16. Цепные операции в Python
  17. Python defaultdict добавление ключа
  18. Активация Matplotlib в Jupyter
  19. split() — разделение строки
  20. Расширение операции побитового «и» в Python
  21. Отделение звука от видео
  22. Подсчет вхождений элементов
  23. Асинхронное программирование с asyncio
  24. Установка и загрузка Instaloader
  25. Управление памятью в Python
  26. Добавление элемента к кортежу
  27. Python и Юникод: работа с цифрами
  28. Отслеживание прогресса с tqdm
  29. Оператор walrus в Python
  30. Работа с timedelta
  31. Python union() функция — объединение множеств
  32. Работа с enumerate()
  33. Оптимизация создания строк
  34. Конструктор в Python
  35. Операторы увеличения и уменьшения переменной
  36. Функция zip() в Python
  37. Работа с комплексными числами в Python
  38. Преобразование данных в Python
  39. Получение размера объекта с sys.getsizeof()
  40. Печать в одной строке
  41. Обработка ошибок в Python
  42. GitHub в Telegram: подписка на уведомления
  43. Enum в Python

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