Что такое namedtuple и когда его использовать?

Junior
244 просмотров
AFK Offer AI

namedtuple из collections — это фабрика для создания immutable классов с именованными полями. Point = namedtuple("Point", ["x", "y"]) — всё, у тебя класс с __init__, __repr__, __eq__, распаковкой и доступом по имени (p.x) и по индексу (p[0]). Это легковеснее dataclass, занимает столько же памяти сколько tuple. Минус — нет значений по умолчанию (хотя _defaults добавили), нет мутабельности. Для простых записей — идеально, для сложных — лучше dataclass.

Следующий вопрос

Как работают permissions в DRF?