python类继承示例代码Car.py

次阅读
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=f"{self.year} {self.make} {self.model}"
        return long_name.title()
   
    def read_odometer(self):
        print(f"This car has {self.odometer_reading} miles on it.")

    def update_odometer(self,mileage):
        if mileage>=self.odometer_reading:
            self.odometer_reading=mileage
        else:
            print(f"You can't roll back an odometer!")
   
    def increment_odometer(self,miles):
        self.odometer_reading+=miles

class Battery:
    """一次模拟电动汽车电瓶的简单尝试"""
    def __init__(self,battery_size=75):
        """初始化电瓶的属性"""
        self.battery_size=battery_size
    def describe_battery(self):
        """打印一条描述电瓶容量的消息。"""
        print(f"This car has a {self.battery_size}-KWh battery.")
    def get_range(self):
        """打印一条消息,指出电瓶的续航里程"""
        if self.battery_size==75:
            range=260
        elif self.battery_size==100:
            range=315
        print(f"This car can go about {range} miles on a full charge.")

class ElectricCar(Car):
    """电动汽车的独到之处"""
    def __init__(self, make, model, year):
        super().__init__(make, model, year)
        self.battery=Battery()

my_tesla=ElectricCar('tesla','models',2019)
print(my_tesla.get_descriptive_name())
my_tesla.battery.describe_battery()
my_tesla.battery.get_range()
2019 Tesla Models
This car has a 75-KWh battery.
This car can go about 260 miles on a full charge.


相关文章:

版权声明:由yongbin2023-10-25 21:36:24发表,共计1834字。
新手QQ群: 703975885,欢迎进群讨论 鲁班编程网