在Python中调用父构造函数
这个问题在这里已经有了答案:
你这样做的方式确实是推荐的(对于Python 2.x)。
这个类是否被明确地传递给super
是一个风格问题而不是功能问题。 传递类super
符合Python的“显式优于隐式”的哲学。
Python 3包含一个改进的super(),它允许像这样使用:
super().__init__(args)
你可以简单地写:
class A(object):
def __init__(self):
print "Constructor A was called"
class B(A):
def __init__(self):
A.__init__(self)
# A.__init__(self,<parameters>) if you want to call with parameters
print "Constructor B was called"
class C(B):
def __init__(self):
# A.__init__(self) # if you want to call most super class...
B.__init__(self)
print "Constructor C was called"
链接地址: http://www.djcxy.com/p/26785.html