Можно сделать поля dataclass неизменяемыми, указав frozen=True.
В таком случае поля нельзя мутировать после создания инстанса.
Пример ниже👇
from dataclasses import dataclass
@dataclass(frozen=True)
class Color:
name: str
hex_value: str
color = Color("red", "#FF0000")
# color.name = "blue" # выбросит FrozenInstanceError
👉 @PythonPortal
