मैं एक वर्ग है:mixins, बहु विरासत, कंस्ट्रक्टर्स, और डेटा
class A(object):
def __init__(self, *args):
# impl
इसे "mixin", मूल रूप से कुछ डेटा और तरीकों के साथ अन्य वर्ग:
class Mixin(object):
def __init__(self):
self.data = []
def a_method(self):
# do something
अब मैं बनाने मिश्रण के साथ ए के उप-वर्ग:
class AWithMixin(A, Mixin):
pass
मेरी समस्या यह है कि मैं ए और मिक्सिन दोनों के रचनाकारों को बुलाता हूं। मैंने एविथमिक्सिन को स्वयं का एक कन्स्ट्रक्टर देने पर विचार किया, जिसमें सुपर को बुलाया गया था, लेकिन सुपर क्लास के रचनाकारों के पास अलग-अलग तर्क सूचियां हैं। सबसे अच्छा संकल्प क्या है?
आपको दो बेस क्लास के रचनाकारों को कॉल करने से रोकने के लिए क्या करना है (उनके उचित ar के साथ स्मारक) 'AWithMixin .__ init__' से? – NPE
यह पहले से ही गहराई में जवाब दिया गया है। Http://stackoverflow.com/a/6100595/763269 –