经常看到下面的写法
class A(Base):
# Base.__init__(self) #写法一
# super(A,self).__init__() #写法二
我们通常使用 写法二
这样的好处是可以继承父类所有的特性(而不是基类),并且避免重复继承。
class Base(object):
def __init__(self):
print("Base Create")
class childA(Base):
def __init__(self):
print("init A")
# Base.__init__(self)
super(childA, self).__init__()
print("init A end")
class childB(Base):
def __init__(self):
print("init B")
# Base.__init__(self)
super(childB, self).__init__()
print("init B end")
ca=childA()
cb=childB()
结果如下
init A
Base Create
init A end
init B
Base Create
init B end