【发布时间】:2020-08-13 11:35:14
【问题描述】:
我正在尝试在汽车对象上创建一个简单的管道
- 制造汽车的轮子
- 为汽车添加刹车
- 存放汽车
我为此任务开发的代码是:
def build_brakes(car) :
car.brakes = 'new high quality brakes'
return car
class Car :
def __init__(self , wheels):
self.wheels = wheels
self.jsonTransform = {}
self.jsonTransform['wheels'] = wheels
def toJson(self):
return self.jsonTransform
def store(car):
return 'car' , car , 'stored'
c = Car("wheels")
print(c.toJson())
car_with_brakes = build_brakes(c)
print(car_with_brakes.toJson())
stored = store(c)
print(stored)
哪些打印:
{'wheels': 'wheels'}
{'wheels': 'wheels'}
('car', <__main__.Car object at 0x7f40a86bdcf8>, 'stored')
print(car_with_brakes.toJson()) 行打印 {'wheels': 'wheels'}。有没有我可以使用的模式来生成汽车的 JSON 和 brakes 属性并封装上述管道?我可以创建一个名为CarWithBrakes 的新类,例如:
class CarWithBrakes(Car):
def __init__(self , car, brakes):
self.car = car
self.brakes = brakes
def toJson(self):
self.jsonTransform = {}
self.jsonTransform['wheels'] = self.car.wheels
self.jsonTransform['brakes'] = self.car.brakes
return self.jsonTransform
car_with_brakes = CarWithBrakes(c , 'new high qualiy brakes')
car_with_brakes.toJson()
哪个打印:
{'wheels': 'wheels', 'brakes': 'new high qualiy brakes'}
但这对于一个看似简单的问题来说似乎太过分了?
【问题讨论】: