1、当有几个类有相同的代码,代码冗余,可读性不强,这时可以用继承。将相同代码写入Person中,各类继承父类。
class Person: def __init__(self,name,age): self.name = name self.age = age
class Student(Person): pass
class Employee(Person): pass class Doctor(Person): pass
2、如果子类中没有__init__,则直接找父类的__init__;如果需要自己定义__init__,则要调用父类的__init__,
使用super().__init__(name,age) 或者 super(类名,self).__init__(name,age)
class Person: def __init__(self,name): self.name = name self.age = 23 class Student(Person): def __init__(self,name,age,clazz): super().__init__(name,age) self.clazz = clazz
3、如果子类有父类同名的方法,默认搜索原则:先从子类自身中找,如果没有再找父类。
子类也可以调用父类的方法: super().方法名()
原文:https://www.cnblogs.com/gaona666/p/12598268.html