Python Glossary English

все Python 3Словари (dict)функция

dict.setdefault

доступ

Возвращает значение по ключу; если ключа нет — добавляет его со значением default и возвращает default.

Синтаксис

d.setdefault(key, default=None)

Главная идиома — группировка: d.setdefault(k, []).append(x), потому что метод возвращает именно тот объект, что лежит (или только что лёг) в словаре. Но default вычисляется при каждом вызове, даже когда ключ уже есть, — новый пустой список создаётся и тут же выбрасывается; если группировок много, чище и быстрее collections.defaultdict(list).

Примеры

d = {'a': 1}
print(d.setdefault('a', 0))   # → 1
print(d.setdefault('b', 2))   # → 2
print(d)                      # → {'a': 1, 'b': 2}

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности