在学习Python时,我对使用继承初始化类的语法有一些困惑。在各种例子中,我看到了如下内容:
class Foo(Bar):
def __init__(self, arg, parent = None):
Bar.__init__(self, parent)
self.Baz = arg
etc.
有时候只是
class Foo(Bar):
def __init__(self, arg):
Bar.__init__(self)
etc.
何时要确保使用“parent”作为初始化函数的参数?谢谢。
Tags:
一般来说,传递
parent
不是必需的,只有当父类的构造函数显式需要这样的参数时。这在某些层次结构中使用,例如PyQt。父类初始化的一个好习惯用法是使用
super
:在您的示例中,变量“parent”具有误导性。只是父类可能需要必须提供的附加参数
在这个例子中,父类Pet需要一个属性(name),子类提供它
如前所述,使用“super”语法调用父类方法
相关问题 更多 >
编程相关推荐