在python中,如何使用type()将参数传递给父类? 我有这个父类,我想创建12个类似的类来继承父类,所有这些类都具有相同的签名,并且没有参数。如何使用type()定义Child1? 到目前为止我有 Child1=type('Child1',(Rank,),dict())但是我如何将第一个传递给父类

在python中,如何使用type()将参数传递给父类? 我有这个父类,我想创建12个类似的类来继承父类,所有这些类都具有相同的签名,并且没有参数。如何使用type()定义Child1? 到目前为止我有 Child1=type('Child1',(Rank,),dict())但是我如何将第一个传递给父类,python,class,inheritance,types,parameters,Python,Class,Inheritance,Types,Parameters,您可以使用属性字典。我认为像这样的事情应该会奏效 class Parent(object): def __init__(self, first): self.first = first class Child1(Parent): def __init__(self): Parent.__init__(self, 'A') 根据评论更新: 您可以使用functools.partial def genericInit(self): Pa

您可以使用属性字典。我认为像这样的事情应该会奏效

class Parent(object):

    def __init__(self, first):
        self.first = first

class Child1(Parent):

    def __init__(self):
        Parent.__init__(self, 'A')
根据评论更新: 您可以使用
functools.partial

def genericInit(self):
    Parent.__init__(self, 'A')

type('Child1', (Rank,), {'__init__': genericInit})

但这是错误的代码。您通常不希望从init以外的任何地方调用init,因为使用您的类的任何人都会感到困惑

Child1=type('Child1',(Parent,),{'init':Parent.\uuuu init\uuuuu('A')})我想这样做,但这不起作用?这失败了,因为您需要将
Parent
的实例传递给
Parent
的init方法。您试图在类型实例化时调用它,但在实例化类时需要调用它。为什么上面的方法不管用呢?我必须制作10多个子类,我不想为每个子类和每个子类都制作泛型。你想解决什么问题?
attrDict = {'init': functools.partial(Parent.__init__, first='A')}