自定义一个交通工具类(Vehicle),并根据提示对该类进行进一步封装,使其拥有工具类型、速度、体积等属性值。通过自定义实例方法实现交通工具的前移、速度设置、获取当前速度、加速行驶、减速行驶、实例信息展示、实例类型判别等功能。 效果图如下:
class Vehicle(object):
# 自定义Vehicle类属性
# 自定义实例的初始化方法
# 自定义实例方法show_info,打印实例的速度和体积
# 自定义实例方法move,打印“我已向前移动了50米”
# 自定义实例方法set_speed,设置对应的速度值
# 自定义实例方法get_speed,打印当前的速度值
# 自定义实例方法speed_up,实现对实例的加速
# 自定义实例方法speed_down,实现对实例的减速
# 自定义实例方法transport_identify,实现对实例
if __name__ == "__main__":
tool_1 = Vehicle(20, (3.6, 1.9, 1.75))
# 调用实例方法 打印实例的速度和体积
# 调用实例方法 实现实例的前移
tool_1.set_speed(40)
# 调用实例方法 打印当前速度
# 调用实例方法 对实例进行加速
# 调用实例方法 对实例进行减速
# 调用实例方法 判断当前实例的类型
# coding:utf-8
class Vehicle(object):
# 自定义Vehicle类属性
trans_type = 'SUV'
# 自定义实例的初始化方法
def __init__(self, speed, size):
self.speed = speed
self.size = size
# 自定义实例方法show_info,打印实例的速度和体积
def show_info(self):
print('所属类型:{},速度是{}km/h,体积是{}'.format(self.trans_type, self.speed, self.size))
# 自定义实例方法move,打印“我已向前移动了50米”
def move(self):
print('我已向前移动了50米')
# 自定义实例方法set_speed,设置对应的速度值
def set_speed(self, speed):
self.speed = speed
# 自定义实例方法get_speed,打印当前的速度值
def get_speed(self):
print('我的时速为:{}'.format(self.speed))
# 自定义实例方法speed_up,实现对实例的加速
def speed_up(self):
self.__new_speed = self.speed + 10
print('我的速度由{}km/h,提升到了{}km/h'.format(self.speed,self.__new_speed))
# 自定义实例方法speed_down,实现对实例的减速
def speed_down(self):
self.__speed = self.speed - 15
print('我的速度由{}km/h,下降到了{}km/h'.format(self.speed, self.__speed))
# 自定义实例方法transport_identify,实现对实例
def transport_identify(self):
if isinstance(self, Vehicle):
print('类型匹配')
else:
print('类型不匹配')
if __name__ == "__main__":
tool_1 = Vehicle(20, (3.6, 1.9, 1.75))
# 调用实例方法 打印实例的速度和体积
tool_1.show_info()
# 调用实例方法 实现实例的前移
tool_1.move()
tool_1.set_speed(40)
# 调用实例方法 打印当前速度
tool_1.get_speed()
# 调用实例方法 对实例进行加速
tool_1.speed_up()
# 调用实例方法 对实例进行减速
tool_1.speed_down()
# 调用实例方法 判断当前实例的类型
tool_1.transport_identify()
C:\Python39\python.exe C:/Users/admin/PycharmProjects/python_object/hello.py
所属类型:SUV,速度是20km/h,体积是(3.6, 1.9, 1.75)
我已向前移动了50米
我的时速为:40
我的速度由40km/h,提升到了50km/h
我的速度由40km/h,下降到了25km/h
类型匹配
进程已结束,退出代码为 0
class Vehicle(object):
# 自定义Vehicle类属性
trans_type = 'SUV'
# 自定义实例的初始化方法
def __init__(self,speed,size):
self.speed = speed
self.size = size
# 自定义实例方法show_info,打印实例的速度和体积
def show_info(self):
print('速度:{0}km/h,体积:{1}'.format(self.speed,self.size))
# 自定义实例方法move,打印“我已向前移动了50米”
def move(self):
print('我已经向前移动了50米')
# 自定义实例方法set_speed,设置对应的速度值
def set_speed(self,speed):
self.speed = speed
# 自定义实例方法get_speed,打印当前的速度值
def get_speed(self):
print('我的时速为:{0}km/h'.format(self.speed))
# 自定义实例方法speed_up,实现对实例的加速
def speed_up(self):
speed2 = self.speed+10
print('我的速度由{0}km/h提升到了{1}km/h'.format(self.speed,speed2))
self.speed = speed2
# 自定义实例方法speed_down,实现对实例的减速
def speed_down(self):
speed3 = self.speed - 15
print('我的速度由{0}km/h下降到了{1}km/h'.format(self.speed,speed3))
self.speed = speed3
# 自定义实例方法transport_identify,实现对实例所属类型的判断
def transport_identify(self):
if isinstance(self,Vehicle):
print('类型匹配')
else:
print('类型不匹配')
if __name__ == "__main__":
tool_1 = Vehicle(20, (3.6, 1.9, 1.75))
# 调用实例方法 打印实例的速度和体积
tool_1.show_info()
# 调用实例方法 实现实例的前移
tool_1.move()
tool_1.set_speed(40)
# 调用实例方法 打印当前速度
tool_1.get_speed()
# 调用实例方法 对实例进行加速
tool_1.speed_up()
# 调用实例方法 对实例进行减速
tool_1.speed_down()
# 调用实例方法 判断当前实例的类型
tool_1.transport_identify()