麻烦老师帮忙帮忙看一下哪些地方需要优化

来源:1-7 编程练习

媛猿

2019-08-27 19:25:06

class Vehicle(object):
   trans_type = 'SUV'

   # 定义一个类的初始化对象,需要类定义一个构造方法__init__()
   def __init__(self, speed, size):
       self.__speed = speed
       self.size = size

   def show_info(self):
       print("我所属类型为:{0},速度为:{1}Km/h,体积为:{2}".format(self.trans_type, self.__speed, self.size))

   def move(self):
       """
       定义move( )方法,实现打印“我已向前移动了50米”
       :return:
       """
       print("我已向前移动了50米")

   def set_speed(self, new_speed):
       """
       定义set_speed(new_speed)方法,设置对应实例的速度为new_speed km/h
       :param speed:
       :return:
       """
       self.__speed = new_speed
       print("当前速度为:{0}".format(new_speed))


   def get_speed(self):
       """
       定义get_speed()方法,如果(2)中设置了速度值则打印出来,打印格式为'我的时速为:设置的速度值 km/h'
       :return:
       """
       # 如何判断是2中设置了速度值
       # if self.speed is not None:
       #     print('我的时速为:设置的速度值 km/h')
       print("我的时速为:设置的速度值{0}km/h".format(self.__speed))

   def speed_up(self):
       """
       定义speed_up()方法,设置每次调用时实例的速度都增加10km/h,并打印“我的速度由xx km/提升到了xx km/h”
       :return:
       """
       # 如何监控调用实例的速度的次数
       speedup = self.__speed + 10
       print("我的速度由{0}km/h提升到了{1}km/h".format(self.__speed, speedup))

   def speed_down(self):
       """
       定义speed_down()方法,设置每次调用时实例的速度都降低15km/h,并打印“我的速度由xx km/下降到了xx km/h”
       :return:
       """
       # 如何监控调用实例的速度的次数
       speeddown = self.__speed - 15
       print("我的速度由{0}km/h下降到了{1}km/h".format(self.__speed, speeddown))

   def transport_identify(self):
       """
       自定义方法 transport_identify( ),判断实例是否为Vehicle类型。若是则打印‘类型匹配’,反之则打印‘类型不匹配’
       :return:
       """
       # 判断哪个实例为Vehicle类型
       if isinstance(tool_1, 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.speed_up()
   tool_1.speed_down()
   tool_1.transport_identify()
写回答

1回答

时间,

2019-08-28

同学,你好。整体是没有太大问题的,但还有细节需要注意:

1、减速时应在加速后的速度上进行减速。可以定义变量保存当前的速度

http://img.mukewang.com/climg/5d65e7b60001d02d08020274.jpg

2、在transport_identify( )方法中用isinstance()判断实例是否为Vehicle类型时,第一个参数可以写self,表示当前类的实例。可以不直接写实例的具体名字

http://img.mukewang.com/climg/5d65e8ab00012ff604420198.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

0

0 学习 · 8160 问题

查看课程