何らかの理由で定義されたクラス 'Parent' と、それ__new__
を継承するクラス 'Child' があるとします。(私の場合、変更できないサードパーティのクラスから継承しようとしています)
class Parent:
def __new__(cls, arg):
# ... something important is done here with arg
私の試みは:
class Child(Parent):
def __init__(self, myArg, argForSuperclass):
Parent.__new__(argForSuperclass)
self.field = myArg
しかし、
p = Parent("argForSuperclass")
期待どおりに動作します
c = Child("myArg", "argForSuperclass")
__new__
'Child'は、独自のメソッドではなく、'Parent' から継承したメソッドを呼び出そうとするため、失敗します__init__
。
期待どおりの動作を得るには、「子」で何を変更する必要がありますか?