Python-使用具有多重继承的方法组合返回值

时间:2018-12-15 07:55:43

标签: python multiple-inheritance

也许我缺少多重继承的一些基本方面,但是我相信应该有一种方法可以使这项工作实现。

假设您有一个类A和一个属性a,一个类B和一个属性b,依此类推,直到一个类{{1} },属性为Z

所有父类都有一个返回值为z的方法,例如not None,并且您想在由__repr__实现的方法中组合返回值。

我了解以下内容不是有效的python代码,仅供参考。

Child

from collections import ChainMap class A(object): def __init__(self): self.a = "A" def __repr__(self): return { "a": self.a } class B(object): def __init__(self): self.b = "B" def __repr__(self): return { "b": self.b } ... class Z(object): def __init__(self): self.z = "Z" def __repr__(self): return { "z": self.z } class Child(A, B, ..., Z): def __init__(self): super(Child, self).__init__() def __repr__(self): return ChainMap( *calling_all_supers(Child, self).__repr__() ) 类上调用__repr__的预期结果将是:

Child

如何实现{ "a":"a", "b":"b", ... "z":"z" }

使用属性代替方法时,如何获得相似的结果?

0 个答案:

没有答案