保时捷的信息不能打印,为啥把print改为return就可以了?
来源:3-7 编程练习
慕桂英0414447
2019-05-13 16:33:44
class Car(object):
# Car类的基本车型设置,列表形式
description = ['大众', '丰田', '广本', '沃尔沃', '凯迪拉克']
# 重写该类的构造方法,并将参数l、w、h、brand赋值给实例对象属性
def __init__(self, l, w, h, brand):
self.l = l
self.w = w
self.h = h
self.brand = brand
# 自定义该类的基本车型检索方法
def modify_des(self):
if self.brand in self.description:
return self.brand
else:
return '请输入您的车辆描述'
@staticmethod
# 自定义静态方法 提示用户:‘已完成车辆基本参数信息的录入!’
def basic_parameters():
print('已完成车辆基本参数信息的录入!')
# 自定义类方法 根据用户车辆的品牌给出相应的合理保养建议
def upkeep(self, desc):
if desc in self.description:
print('根据汽车保养的相关经验,{0}品牌的车应于5000km/次的频率进行专业性保养'.format(desc))
else:
print('非常抱歉!{0}品牌不在我们的保养范围内'.format(desc))
car_1 = Car(4.2, 1.8, 1.5, '大众')
# 调用实例方法:basic_parameters()
Car.basic_parameters()
# 利用if语句,调用modify_des()以判断Car的类属性description是否存在
if car_1.modify_des():
# 若if判断条件成立 则调用类方法upkeep()并将对应实例的brand属性传递给参数desc
car_1.upkeep(car_1.brand)
else:
print('请正确填写相关车辆的信息')
# 当if语句的判断条件不成立时,打印输出并提示用户:‘请正确填写相关的车辆信息’
car_2 = Car(4.2, 1.8, 1.5, '保时捷')
# 调用实例方法:basic_parameters()
Car.basic_parameters()
# 利用if语句,调用modify_des()以判断Car的类属性description是否存在
if car_2.modify_des():
car_2.upkeep(car_2.brand)
1回答
慕猿梦
2019-05-13
同学,您好,如下图,先执行步骤1,如果有返回值则执行upkeep()方法,执行了upkeep()方法才会输出:非常抱歉!保时捷品牌不在我们的保养范围内,return就是使其具有返回值。
如果我的回答解决了您的疑惑,望采纳!!^_^ 祝学习愉快~~~~~
相似问题
回答 3