Курс 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"
- Расчет времени выполнения кода
- Переопределение метода __and__
- Работа с PosixPath() в Python
- Отладка производительности Python
- Избегание циклических зависимостей классов в Python
- Метод join() для объединения элементов
- Обновление шаблона base.html
- Работа с YAML в Python
- Улучшенные подсказки для импорта в Python 3.12
- Чтение и запись TOML-конфигов
- Измерение времени выполнения кода
- Удаление элемента по индексу
- Любовь к Python
- Повторение элементов списков
- Генераторы в Python
- Создание даты из строки ISO
- Инверсия списка/строки в Python
- Работа с Enum в Python3.
- Анализ текста на русском языке с помощью Pymystem3
- Генераторы в Python
- Извлечение новостей с помощью newspaper3k
- Декораторы с @wraps
- Обработка исключений в Python
- Присвоение и ссылки
- Метод __getitem__ в Python
- Глобальные переменные в Python
- Переименование файлов в Python
- Создание новых списков через list comprehensions
- Переопределение метода __or__()
- Создание GUI с Tkinter: Entry
- Методы shutil для работы с файлами
- Antigravity модуль
- Метод count в Python: почему count(», ») возвращает 4?
- Таймер обратного отсчета
- Конструктор в Python
- Создание генераторов
- Обратное распространение ошибки
- Работа с классами данных
- Модуль inspect
- Метод getitem для доступа к элементам последовательности
- Замыкания в Python
- Генераторы списков в Python















