class Car():
#车
def __init__(self, make, model, year):
self.make = make
self.modle = model
self.year = year
self.odometer_reading = 0
def get_descriptive_name(self):
long_name = str(self.year) + ' ' + self.make + ' ' + self.modle
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 Battery():
def __init__(self, battery_size = 70):
#初始化电瓶
self.battery_size = battery_size
#打印电瓶信息
def describe_battery(self):
print("This car has a " + str(self.battery_size) + "-kWh battery.")
class ElectricCar(Car):
#电动车
def __init__(self,make, model, year):
#初始化父类,再初始化电瓶
super().__init__(make, model, year)
self.battery = Battery()
my_car = ElectricCar('JayChou', 'model s', 2020)
print(my_car.get_descriptive_name())
my_car.battery.describe_battery()
实现起来相对轻松
class Dog():
#初始化
def __init__(self, name, age):
self.name = name
self.age = age
#模拟狗坐下
def sit(self):
print(self.name.title() + 'is now sitting! ')
#模拟狗打滚
def roll_over(self):
print(self.name.title() + 'is now rolled over! ')
#创建实例
kiki_dog = Dog('卢男', 6)
print("My dog's name is " + kiki_dog.name.title() + '.')
print("My dog is " + str(kiki_dog.age) + ' years old.')
class SizeDog():
def __init__(self, size_dog = 10):
self.size_dog = size_dog
def print_size(self):
print('This dog has a ' + str(self.size_dog) + 'cm.')
class SmallDog(Dog):
def __init__(self, name, age):
super().__init__(name, age)
self.size = SizeDog()
my_dog = SmallDog('阿牛', 7)
my_dog.sit()
my_dog.size.print_size()