老师帮我看看,还有哪些地方需要改进的
来源:1-7 编程练习
3三哥
2019-09-27 17:23:18
class Vehicle(object): # 自定义Vehicle类属性 def __init__(self, speed, size, trans_type='SUV'): self.speed = speed self.size = size self.trans_type = trans_type # # 自定义实例的初始化方法 # def ojbk(self): # self.speed = 10 # self.size = (0.0, 0.0, 0.0) # 自定义实例方法show_info,打印实例的速度和体积 def show_info(self): print("我的所属类型为:{0}, 速度:{1}km/h, 体积:{2}".format(self.trans_type, self.speed, self.size)) # 自定义实例方法move,打印“我已向前移动了50米” def set_move(self, m): print("我已向前移动了 {}米".format(m)) # 自定义实例方法set_speed,设置对应的速度值 def set_speed(self, speed): self.speed = speed return self.speed # 自定义实例方法get_speed,打印当前的速度值 def get_speed(self): self.speed = self.speed print("我的时速为:设置的速度值 {}km/h".format(self.speed)) # 自定义实例方法speed_up,实现对实例的加速 def speed_up(self): speed_up = self.speed + 10 print("我的速度由{0} km/提升到了{1} km/h".format(self.speed, speed_up)) return speed_up # 自定义实例方法speed_down,实现对实例的减速 def speed_down(self): speed_down = self.speed - 5 print("我的速度由{0} km/下降到了{1} km/h".format(self.speed, speed_down)) return speed_down # 自定义实例方法transport_identify,实现对实例所属类型的判断 def transport_identify(self, x): if isinstance(x, Vehicle): print("类型匹配") else: print("类型不匹配") if __name__ == "__main__": tool_1 = Vehicle(20, (3.6, 1.9, 1.75)) # 调用实例方法 打印实例的速度和体积 tool_1.show_info() # 调用实例方法 实现实例的前移 tool_1.set_move(50) tool_1.set_speed(40) # 调用实例方法 打印当前速度 tool_1.get_speed() # 调用实例方法 对实例进行加速 tool_1.speed_up() # 调用实例方法 对实例进行减速 tool_1.speed_down() # 调用实例方法 判断当前实例的类型 tool_1.transport_identify(tool_1)
2回答
同学你好:
同学的练习大致没有什么问题。
trans_type题目要求为类属性。
因此构造方法:
即可。
如果我解决了同学的问题,请采纳!学习愉快^_^。
3三哥
提问者
2019-09-27
"""发现了问题,速度实际上没返回,降低速度不是在加速后的值降低
现在修改了如下:"""
class Vehicle(object):
# 自定义Vehicle类属性
def __init__(self, speed, size, trans_type='SUV'):
self.speed = speed
self.size = size
self.trans_type = trans_type
# 自定义实例方法show_info,打印实例的速度和体积
def show_info(self):
print("我的所属类型为:{0}, 速度:{1}km/h, 体积:{2}".format(self.trans_type, self.speed, self.size))
# 自定义实例方法move,打印“我已向前移动了50米”
def set_move(self, m):
print("我已向前移动了 {}米".format(m))
# 自定义实例方法set_speed,设置对应的速度值
def set_speed(self, speed):
self.speed = speed
return self.speed
# 自定义实例方法get_speed,打印当前的速度值
def get_speed(self):
self.speed = self.speed
print("我的时速为:设置的速度值 {}km/h".format(self.speed))
# 自定义实例方法speed_up,实现对实例的加速
def speed_up(self):
self.speed += 10
print("我的速度由{0} km/提升到了{1} km/h".format(self.speed -10, self.speed))
# 自定义实例方法speed_down,实现对实例的减速
def speed_down(self):
self.speed -= 15
print("我的速度由{0} km/下降到了{1} km/h".format(self.speed + 15, self.speed))
# 自定义实例方法transport_identify,实现对实例所属类型的判断
def transport_identify(self, x):
if isinstance(x, Vehicle):
print("类型匹配")
else:
print("类型不匹配")
if __name__ == "__main__":
tool_1 = Vehicle(20, (3.6, 1.9, 1.75))
# 调用实例方法 打印实例的速度和体积
tool_1.show_info()
# 调用实例方法 实现实例的前移
tool_1.set_move(50)
tool_1.set_speed(40)
# 调用实例方法 打印当前速度
tool_1.get_speed()
# 调用实例方法 对实例进行加速
tool_1.speed_up()
# 调用实例方法 对实例进行减速
tool_1.speed_down()
# 调用实例方法 判断当前实例的类型
tool_1.transport_identify(tool_1)
相似问题