Что такое __post_init__ в dataclass?

Middle
157 просмотров
AFK Offer AI

__post_init__ вызывается после автоматически сгенерированного __init__. Используй для: валидации (raise ValueError если данные невалидны), вычисляемых полей (self.full_name = f"{self.first} {self.last}"), преобразования типов (self.date = datetime.fromisoformat(self.date) если пришла строка). InitVar[type] — специальный тип для параметров, которые нужны только в __post_init__, но не сохраняются как атрибуты. __post_init__ получает InitVar параметры как аргументы.

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

Как использовать prometheus_client в Python?