Dataclass: явная структура данных в Python

Dataclass сокращает повторяющийся код классов, предназначенных для хранения значений.

Иллюстрация к теме, а не фотография описанного события. Anandmoorthyj · CC BY-SA 3.0. Размер изменён; при показе возможно кадрирование.

Декоратор dataclass может формировать предусмотренные методы на основе описанных полей. Это удобно для небольших объектов с понятной структурой, которые передаются между частями программы. Аннотации помогают читать назначение данных и работать с инструментами разработки.

При этом структура класса не превращается автоматически в проверку внешнего ввода. Данные из сети или пользовательской формы всё равно нужно валидировать по правилам приложения. Полезно отдельно продумать изменяемость объекта, значения по умолчанию и то, какие поля участвуют в сравнении.

Источники

  1. Официальная документация — Dataclass: явная структура данных в Pythondocs.python.org