子类__init__覆盖超类的[duplicate]
问题内容:
这个问题已经在这里有了答案 :
Python:继承超类__init__ (7个答案)
7年前关闭。
我有一个超类和一个子类。超类包含一个拥有一些属性的构造函数,而子类也应该具有一个用于初始化一些属性的构造函数。但是问题是,当我在子类中创建__init__方法时,它会覆盖超类的构造函数。
如何解决这个问题,以使子类的构造函数不会覆盖超类的构造函数方法?
非常感谢你!
问题答案:
使子类调用超类__init__
方法。您可以显式地执行此操作,也可以使用super
函数来执行此操作。对于简单继承之类的简单情况,这两种方法都是等效的。
class Subclass(Superclass):
def __init__(self):
Superclass.__init__(self)
class Subclass(Superclass):
def __init__(self):
super(Subclass, self).__init__()