Курс 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. Модуль Operator в Python
  2. Удаление файлов и папок в Python
  3. Скрытие вывода данных
  4. Генерация QR-кодов с библиотекой qrcode
  5. Роль object и type в Python
  6. Настройка вывода NumPy
  7. Операции с датами в Python
  8. Виртуальные среды в Python
  9. Python и Юникод: работа с цифрами
  10. Запуск внешних программ с subprocess
  11. Работа с областями видимости переменных
  12. Выражения-генераторы в Python
  13. Обработка ошибок в Python
  14. Использование подчеркивания в REPL
  15. Метод __ixor__ для побитового исключающего ИЛИ
  16. Методы split() и join() — Python строк.
  17. Многострочные комментарии в Python
  18. Обработка исключений в Python 3
  19. Вычисление фазы комплексного числа
  20. Округление в Python
  21. Оформление текста в консоли с TermColor
  22. Генераторы в Python
  23. Поиск простых чисел
  24. Генераторы словарей и множеств
  25. Особенности множеств в Python
  26. Переопределение метода xor в Python
  27. Оптимизация сравнения в Python
  28. Проверка типов с использованием isinstance
  29. Функция zip() — объединение последовательностей
  30. Изменения в обработке логических значений
  31. Работа с массивами в Numpy
  32. Декораторы в Python
  33. Создание вложенных циклов for
  34. Colorama: окрашивание текста в Python
  35. Проекты на Python
  36. Проверка вхождения подстроки
  37. Управление импортом в Python
  38. Добавление элемента к кортежу
  39. Итерация по итерируемым объектам
  40. Объединение итераторов
  41. Декораторы классов
  42. Обратное распространение ошибки
  43. Избегайте пустого списка
  44. Фильтрация данных в Python.
  45. JSON-esque в Python
  46. Измерение времени выполнения с помощью time
  47. Оператор walrus в Python
  48. Удаление дубликатов из списка с помощью dict.fromkeys

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