December 9, 2022

Сollections defaultdict python

defaultdict нужен для создания словаря со значением по умолчанию. Значение подставляется при обращении к несуществующему ключу, что позволяет не писать лишней логики. В остальном аналогичен обычному словарю

При обращении к несуществующему ключу кидает ошибку

А если мы хотим чтоб он создавался то используем:

from collections import defaultdict

Если ключа нет то он создастся с каким либо значение по умолчанию, так как мы указали тип int то вызовется функция int() которая возвращает 0

Сделали значения по умолчанию список, так как ключа "s" нет в нашем словаре, то создался пустой список

Также можно создавать пару ключ-значение

Или указывать что будет создаваться по умолчанию

Теперь где это пригодится

Проверяем есть ли ключ то добавляем элемент, если нет создаем ключ и добавляем элемент

Посчитать сумму количества элементов, берется имя и по этому ключу считается общее количество

Или добавить все элементы по ключу в один список

другой метод

Или добавить из этого списка только уникальные элементы