老师帮我看看这么做对不对?

来源:3-7 编程练习

weixin_慕码人71622

2019-10-08 20:49:16

class Car(object):
    """
    对客户车辆的基本信息进行录入,并分析得出针对同类型的车辆进行合理保养的相关建议.
    """
    
    # Car类的基本车型设置,列表形式
    def description(self):
        return ['大众', '丰田', '广本', '沃尔沃', '凯迪拉克']

    # 重写该类的构造方法,并将参数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):
        for i in self.description():
            # print(i)
            if self.brand == i:
                return 1
            else:
                return "请输入您的车辆描述"

    # 自定义静态方法 提示用户:‘已完成车辆基本参数信息的录入!’
    @staticmethod
    def basic_parameters():
        print("已完成车辆基本参数信息的录入")

    # 自定义类方法 根据用户车辆的品牌给出相应的合理保养建议
    def upkeep(self, desc):
        for i in self.description():
            if i == desc:
                print("根据汽车保养的相关经验,{0}品牌的车应于5000km/次的频率进行专业性保养".format(desc))
                break
            else:
                print("非常抱歉!{0}品牌不在我们的保养范围内".format(desc))
                break


if __name__ == '__main__':
    car_1 = Car(4.2, 1.8, 1.5, '大众')
    car_1.modify_des()
    # 调用实例方法:basic_parameters()
    car_1.basic_parameters()
    # 利用if语句,调用modify_des()以判断Car的类属性description是否存在
    if car_1.modify_des():
        # 若if判断条件成立 则调用类方法upkeep()并将对应实例的brand属性传递给参数desc
        car_1.upkeep(car_1.brand)
    else:
        # 当if语句的判断条件不成立时,打印输出并提示用户:‘请正确填写相关的车辆信息’
        print("请正确填写相关的车辆信息")
    print("------------------------")
    car_2 = Car(4.2, 1.8, 1.5, '保时捷')
    # 调用实例方法:basic_parameters()
    car_2.basic_parameters()
    # 利用if语句,调用modify_des()以判断Car的类属性description是否存在
    if car_2.modify_des():
        # 若if判断条件成立,则调用类方法upkeep()并将对应实例的brand属性传递给参数desc
        car_2.upkeep(car_2.brand)
    else:
        # 当if语句的判断条件不成立时,打印输出并提示用户:‘请正确填写相关的车辆信息’
        print("请正确填写相关的车辆信息")


写回答

1回答

慕之熠_灿烈

2019-10-09

同学,你好。

你的做法是正确的,请继续继续加油!Fighting!

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

0

0 学习 · 8160 问题

查看课程