python
class Car(object):
def __init__(self, model=None):
self.model = model
def run(self):
print('run')
class ToyotaCar(Car):
def run(self):
print('run fast')
class TeslaCar(Car):
def __init__(self, model='Model A', enable_auto_run=False):
super().__init__(model)
self.enable_auto_run = enable_auto_run
def run(self):
print('run very fast')
def auto_run(self):
print('auto run')
car = Car()
car.run()
print('############')
toyota_car = ToyotaCar('Lexus')
print(toyota_car.model)
toyota_car.run()
print('############')
tesla_car = TeslaCar('Model S')
print(tesla_car.model)
tesla_car.run()
tesla_car.auto_run()
Résultat d'exécution
run
############
Lexus
run fast
############
Model S
run very fast
auto run
Le constructeur de la classe TeslaCar est À l'origine
python
def __init__(self, model='S Model', enable_auto_run=False):
self.model = model
self.enable_auto_run = enable_auto_run
Je suis sur le point d'écrire Il fait la même chose que le constructeur de super classe, donc Il peut être écrit en utilisant la super fonction.
Recommended Posts