Почему я не могу просто определить «производную» переменную в определении класса и присвоить ей вычисленное значение вместо использования для этого метода __post_init__?
Пример:
Почему я не могу просто определить «производную» переменную в определении класса и присвоить ей вычисленное значение вместо использования для этого метода __post_init__? Пример: [code]from dataclasses import dataclass, field
@dataclass class Sensor_Interface_2: name: str = "Sensor" inp_On: str = name + '.inp_On'
x = Sensor_Interface(name="MySensor") x2 = Sensor_Interface_2(name="Mysensor2") print(x.inp_On) print(x2.inp_On) [/code] Оба определения классов работают. Так что же плохого в использовании второго стиля?