Курс 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. CSV строка разделение в Python
  2. Автоматизация с Python
  3. Проверка дублей в списке.
  4. Принципы Zen of Python
  5. Генераторы данных
  6. Работа с timedelta в Python
  7. Преобразование чисел в слова
  8. *args и **kwargs в Python
  9. Поиск простых чисел
  10. Декоратор @override
  11. Извлечение данных из JSON
  12. Область видимости переменных в Python
  13. Аннотации типов в Python
  14. Работа с итераторами в Python
  15. Декоратор Property в Python
  16. Оператор assert в Python
  17. Операции с датами в Python
  18. Объединение словарей в Python
  19. Flask — веб-фреймворк Python
  20. Аннотации типов в Python
  21. Методы работы со списками
  22. GitHub в Telegram: подписка на уведомления
  23. Создание и обучение модели с Keras
  24. Добавление вложенных списков
  25. Создание коллекций из генератора
  26. Абстракции словарей и множеств в Python
  27. globals и locals
  28. Импорт модулей и пакетов в Python
  29. Работа с кортежами
  30. Преобразование генераторов в циклы
  31. Метод rxor для операции побитового исключающего «или»
  32. Функция __init__ в Python
  33. UserList в Python: Описание и примеры использования
  34. Python Поверхностное Копирование
  35. Метод ipow для возведения в степень
  36. Лямбда-функции в Python
  37. Генерация QR-кодов с Python
  38. Конкатенация строковых литералов
  39. Создание файла с проверкой ошибки
  40. Аннотации типов в Python
  41. Форматирование строк с помощью f-строк
  42. Работа с утверждениями в Python
  43. Участие в LP стейкинге Waves
  44. Методы __repr__ и __str__ в Python
  45. Основные функции и модули Python
  46. Настройка вывода в Numpy
  47. Работа с переменными в Python

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