如果我创建一个覆盖另一个类的python类,是否会从基类调用__init__
?如果我想为它指定参数怎么办?
基类:
class bar(object):
def __init__(self, somearg = False):
# ...
新课
class foo(bar):
def __init__(self)
# ???
我想要什么?
obj = foo() # somearg = True
答案 0 :(得分:2)
不,不调用基类__init__
方法,因为派生类提供了该方法的新版本。
您将通过__init__
代理显式调用父super()
方法,并传入参数以设置其他默认值:
class foo(bar):
def __init__(self)
super().__init__(somearg=True)