我正在尝试确定哪些模块应该负责我的自定义输出方法。
我有以下设置:
|-main.py
|-libs
|-Car (attr: Tires, Seats, Doors, Engine)
|-Tires (attr: size, age, brand)
|-Seats (attr: number, material)
|-Doors (attr: number)
|-Engine (attr: size, make, model, torque)
现在,我的main.py将所有类型的数据源转换为标准的Car Objects。但随后它将输出有关汽车的信息。每个子模块(轮胎引擎)都是Car类的类属性。
您认为最好将打印/输出职责放在哪里?他们会坐在主要位置,因为它可以处理输出到不同地方的内容吗?它位于Car中,因为这是我的主要对象,还是我将print()方法放在每个子模块中,因为它们知道自己的属性? (我倾向于)。现在,子模块继承自(object),而不继承自Car,仅继承自FYI。
我对此表示感谢。
答案 0 :(得分:1)
我建议在Car中进行。
您的car.py是一个模型类,定义明确,您的main.py
就像是一连串的序列化程序,因此我想从Django
中汲取灵感。在Django中,建议覆盖__unicode__()
以提供模型的独立于序列化程序的stdout表示形式。