我在Python
中有以下代码。有两个类A2
和B2
共享函数f1()
和f2()
。它们的基类不同,分别来自A
和B
。
我可以看到如何使用C++
在templates
中对此进行概括。但我不确定如何做到Python
。
class A2(A):
def __init__(self):
A.__init__(self)
self._Z = Z('high')
def f1(self):
return self._Z.f1()
def f2(self):
return self._Z.f2()
# ... more functions ...
class B2(B):
def __init__(self):
B.__init__(self)
self._Z = Z('low')
def f1(self):
return self._Z.f1()
def f2(self):
return self._Z.f2()
# ... more functions ...
答案 0 :(得分:3)
如果我理解你的问题,你可以尝试使用mixin课程:
class Mixin(object):
def f1(self):
return self._Z.f1()
def f2(self):
return self._Z.f2()
class A2(A, Mixin):
def __init__(self):
A.__init__(self)
self._Z = Z('high')
class B2(B, Mixin):
def __init__(self):
B.__init__(self)
self._Z = Z('low')