Предположим, у меня есть 2 класса, украшенных декоратором @dataclass, например
Код: Выделить всё
from dataclasses import dataclass, field
@dataclass
class A:
data_value1 : str = field(default='foo', metadata={'help': 'info about data_value2'})
@dataclass
class B:
data_value2 : float = field(default=0,9, metadata={'help': 'info about data_value2'})
def __post_init__(self):
self.data_value2 += 10
Код: Выделить всё
C = A + B
Код: Выделить всё
@cdataclass
class c:
data_value1 : str = field(default='foo', metadata={'help': 'info about data_value2'})
data_value2 : float = field(default=0,9, metadata={'help': 'info about data_value2'})
def __post_init__(self):
self.data_value2 += 10
Кто-нибудь знает питонический способ достижения этой цели? Я могу придумать способы, но они были бы очень запутанными.
Спасибо за вашу помощь и время, чтобы прочитать этот вопрос.
Я пробовал непосредственно складывая их вместе, но операция сложения для типа не была определена. Будет ли проще всего самому определить операцию сложения? Но я не слишком хорошо знаком с тем, как это сделать в декораторе классов. Может ли кто-нибудь помочь?
Подробнее здесь: https://stackoverflow.com/questions/793 ... bute-names
Мобильная версия