子类调用父类的初始化的时候有两种方式
1.类名.__init__()
2.super().__init__()
当使用第一种方式时,例如
class Person:
def __init__(self,name,age):
self.name=name
self.age=age
class Student(Person):
def __init__(self,name,age,score):
Person.__init__(self,name,age)
self.score=score
这里是需要传self参数的
当使用第二种方式时
class Person: def __init__(self,name,age): self.name=name self.age=age
class Student(Person):
def __init__(self,name,age,score):
super().__init__(name,age)
self.score=score
这里是不需要传递self的
会报错就是这个地方的区别,新手注意。