版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
class Car():
"""一次模拟汽车的简单尝试"""
def __init__(self,make,model,year):#定义一个特别的初始化方法。无需实例的调用就可运行。减少重复代码的使用量
self.make = make#在该方法里定义属性
self.model = model
self.year = year
self.odometer_reading = 0
def get_descriptive_name(self):#定义获得描述的方法
long_name = str(self.year) + " " +self.make + " " + self.model
return long_name.title()#返回整洁的描述信息
def read_odometer(self):#定义读里程表的方法。语法类比函数。
print("This car has " + str(self.odometer_reading) + "miles on it.")
def update_odometer(self,mileage):#定义更新里程表里的数值
if mileage >= self.odometer_reading:
self.odometer_reading = mileage
else:
print("You can't roll back an odometer!")
def increment_odometer(self,miles):
self.odometer_reading += miles
class ElectricCar(Car):#定义一个名为ElectricCar(电动汽车)的子类,子类,子类!!!父类是Car
def __init__(self,make,model,year):
"""初始化父类的属性"""
super().__init__(make,model,year)
#为帮助Python将父类和子类关联起来,这些实参必不可少。(定义是形参,调用是实参)。类比函数调用,这是子类调用父类的一个操作。
self.battery_size = 70
my_tesla = ElectricCar("tesla","model s",2016)#创建ElectricCar的一个实例,并将实参("tesla","model s",2016)传递给形参(make,model,year)
print(my_tesla.get_descriptive_name())#通过实例调用方法get_descriptive_name()
#>>>
2016 Tesla Model S