Ho una classe:Mixin, multi-ereditarietà, costruttori e dati
class A(object):
def __init__(self, *args):
# impl
Anche un "mixin", in pratica un'altra classe con alcuni dati e metodi:
class Mixin(object):
def __init__(self):
self.data = []
def a_method(self):
# do something
Ora creo una sottoclasse di a con la mixin:
class AWithMixin(A, Mixin):
pass
mio problema è che voglio che i costruttori di a e mixin entrambi chiamati. Ho preso in considerazione l'idea di assegnare ad AWithMixin un costruttore proprio, in cui è stato chiamato il super, ma i costruttori delle super classi hanno liste di argomenti differenti. Qual è la migliore risoluzione?
Cosa ti impedisce di chiamare i costruttori delle due classi base (con la loro ar appropriata gumenti) da "AWithMixin .__ init__'? – NPE
A questo è già stata data una risposta approfondita. Vedi http://stackoverflow.com/a/6100595/763269 –