本关任务:设计一个汽车类,并实现它的基本功能。
时间: 2023-05-28 07:05:36 浏览: 139
设计一个Car类
汽车类设计:
属性:
- 品牌(brand)
- 型号(model)
- 颜色(color)
- 车速(speed)
- 油量(oil)
- 最大油量(maxOil)
方法:
- 启动(start):如果油量为0,无法启动;否则启动成功并输出启动信息。
- 加油(addOil):如果油量已达到最大值,无法加油;否则加油并输出加油信息。
- 加速(speedUp):每次加速增加10km/h,但速度不能超过200km/h,同时消耗2单位油量。
- 减速(speedDown):每次减速减少10km/h,但速度不能小于0km/h。
- 停车(stop):速度归零,输出停车信息。
代码实现:
```python
class Car:
def __init__(self, brand, model, color, maxOil):
self.brand = brand
self.model = model
self.color = color
self.speed = 0
self.oil = 0
self.maxOil = maxOil
def start(self):
if self.oil == 0:
print("无法启动,油量为0")
else:
print("启动成功")
def addOil(self, oil):
if self.oil + oil > self.maxOil:
print("无法加油,油量已达到最大值")
else:
self.oil += oil
print("加油成功,当前油量为", self.oil)
def speedUp(self):
if self.speed + 10 > 200:
print("无法加速,已达到最大速度")
else:
self.speed += 10
self.oil -= 2
print("加速成功,当前速度为", self.speed)
def speedDown(self):
if self.speed - 10 < 0:
print("无法减速,已停车")
else:
self.speed -= 10
print("减速成功,当前速度为", self.speed)
def stop(self):
self.speed = 0
print("停车成功,当前速度为0")
```
测试代码:
```python
car = Car("BMW", "X5", "red", 50)
car.start() # 无法启动,油量为0
car.addOil(10) # 加油成功,当前油量为 10
car.addOil(50) # 加油成功,当前油量为 60
car.addOil(1) # 无法加油,油量已达到最大值
car.speedUp() # 加速成功,当前速度为 10
car.speedUp() # 加速成功,当前速度为 20
car.speedUp() # 加速成功,当前速度为 30
car.speedUp() # 加速成功,当前速度为 40
car.speedUp() # 加速成功,当前速度为 50
car.speedUp() # 加速成功,当前速度为 60
car.speedUp() # 加速成功,当前速度为 70
car.speedUp() # 加速成功,当前速度为 80
car.speedUp() # 加速成功,当前速度为 90
car.speedUp() # 加速成功,当前速度为 100
car.speedUp() # 加速成功,当前速度为 110
car.speedUp() # 加速成功,当前速度为 120
car.speedUp() # 加速成功,当前速度为 130
car.speedUp() # 加速成功,当前速度为 140
car.speedUp() # 加速成功,当前速度为 150
car.speedUp() # 加速成功,当前速度为 160
car.speedUp() # 加速成功,当前速度为 170
car.speedUp() # 加速成功,当前速度为 180
car.speedUp() # 加速成功,当前速度为 190
car.speedUp() # 加速成功,当前速度为 200
car.speedUp() # 无法加速,已达到最大速度
car.speedDown() # 减速成功,当前速度为 190
car.speedDown() # 减速成功,当前速度为 180
car.speedDown() # 减速成功,当前速度为 170
car.speedDown() # 减速成功,当前速度为 160
car.speedDown() # 减速成功,当前速度为 150
car.stop() # 停车成功,当前速度为0
```
阅读全文