每日一句:最可怕的敌人,就是没有坚强的信念。
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):
"""1.将里程表读数设置为指定的值,2.禁止将里程表读数往回调"""
# 1.self.odometer_reading=mileage
# 2.修改1.
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
my_new_car = Car(‘audi‘, ‘a4‘, 2016)
print(my_new_car.get_descriptive_name())
my_new_car.read_odometer()
print("--------")
# 修改属性方法一:直接修改属性的值
my_new_car.odometer_reading=200
my_new_car.read_odometer()
print("--------")
# 修改属性方法二:通过方法修改属性的值
my_new_car.update_odometer (25)
my_new_car.read_odometer()
print("--------")
my_new_car.update_odometer (250)
my_new_car.read_odometer()
print("--------")
# 修改属性方法三:通过方法对属性进行递增
my_user_car=Car(‘subaru‘,‘outback‘,2013)
print(my_user_car.get_descriptive_name())
my_user_car.update_odometer (2500)
my_user_car.read_odometer()
my_user_car.increment_odometer(100)
my_user_car.read_odometer()
print("----------------------")
# 继承
# 子类方法__int__()
class ElectricCar(Car):
# 创建了子类ElectricCar,括号中是父类的名字
# 父类与子类必须在一个文件里,父类要在子类前面
"""电动汽车的独特之处"""
def __int__(self,make,model,year):
"""初始化父类的属性"""
super().__int__(make,model,year)
# 给子类定义属性和方法
self.battery_size = 70
def describe_battery(self):
"""打印一条描述电瓶容量的信息"""
print("This car has a "+ str(self.battery_size) + "-kwh battery.")
my_tesla=ElectricCar(‘tesla‘,‘model s‘,2016)
print(my_tesla.get_descriptive_name())
# 此时电动汽车没有其他属性
# 确认电动汽车具备普通汽车的行为
# 给子类定义属性和方法
my_tesla.describe_battery()
2016 Audi A4 This car has 0 miles on it. -------- This car has 200 miles on it. -------- You can‘t roll back an odometer! This car has 200 miles on it. -------- This car has 250 miles on it. -------- 2013 Subaru Outback This car has 2500 miles on it. This car has 2600 miles on it. ---------------------- 2016 Tesla Model S
This car has a 70-kwh battery.
原文:https://www.cnblogs.com/python-study-notebook/p/12723334.html