简单来说,如果我有一个基类:
@dataclass
class Base:
foo: int
bar: int
和派生类:
@dataclass
class Derived(Base):
baz: int
我想要做这件事:
base = Base(1, 2)
derived = Derived(base, 3)
但是这会将
base
分配给derived.foo
。有没有一种方法可以以这样的方式完成它,而无需迭代每个字段?例如,我可以将base
序列化为JSON,添加其他字段,然后反序列化到derived
中,但这似乎有点糊弄。
__init__
。或者更好的是,编写一个另外的构造函数from_base(base, baz)
。 - juanpa.arrivillaga__dict__
来玩弄它,但你必须知道自己在做什么,而且无论如何,这只会让你的代码更加复杂,实际上没有任何好处。 - juanpa.arrivillagaBase
实例?仅为了制作子实例而构建一个实例似乎有点毫无意义。 - ShadowRanger