子类可以按照自己方式处理问题,如果需要借组父类的帮助,使用super()是最好的选择
#父类定义 class Person(): def __init__(self,name): self.name=name #子类定义 class EmailPerson(Person): #子类的初始化方法添加额外Email参数 def __init__(self,name,email): #super()方法获取父类preson定义,会自动将self参数传递给父类 super().__init__(name) self.email=email #运行结果 >>> bob=EmailPerson(‘Bob Frapples‘,‘bob@frapples.com‘) >>> bob.name ‘Bob Frapples‘ >>> bob.email ‘bob@frapples.com‘ >>>
https://www.jb51.net/article/164003.htm
#定义父类 class Human: #父类初始化 def __init__(self,n,a): self.name=n self.age=a print(‘Human初始化的方法被调用了‘) #定义父类方法 def infod(self): print(‘姓名‘,self.name) print(‘年龄‘,self.age) #定义子类 class Student(Human): def __init__(self,n,a,s=0): super().__init__(n,a)#调用父类的初始化方法 self.score=s#增加一个属性 print(‘Student的初始化方法被调用‘) def infos(self):#方法被重写 super().infod()#显示调用父类的方法 print(‘成绩:‘,self.score) s1=Student(‘张‘,20,80) s1.infos() =================== RESTART: C:\Users\admin\Desktop\yc.py =================== Human初始化的方法被调用了 Student的初始化方法被调用 姓名 张 年龄 20 成绩: 80 >>>
原文:https://www.cnblogs.com/bashliuhe/p/12990806.html