我正在为学校工作。我们要创建一个"类"我一直得到一个属性错误,但我无法弄清楚我错了可以有人请求帮助。方向如下。我还包括了我编写的代码,希望有人可以帮助我。
编写一个名为
Car
的类,它具有以下数据属性:
__year_model
(适用于汽车的年份型号)__make
(汽车制造的汽车)__speed
(对于汽车当前的速度)Car类应该有一个接受汽车的
__init__
方法 年模型并作为参数。它还应该为0
指定__speed
数据属性。该课程还应具备以下方法:
- 加速:
accelerate
方法应该为速度数据添加5 每次调用时属性。- 制动:
brake
方法应从速度数据中减去5 每次调用时属性。get_speed
方法应返回当前速度接下来,设计一个创建汽车对象的程序,然后调用 加速方法五次。每次调用加速后 方法,获取汽车的当前速度并显示它。然后打电话给 制动方法五次。每次调用制动方法后,得到 当前的速度和显示它。
class Car:
def __init__(self, year_model, make, speed):
self.year_model = year_model
self.make = make
self.speed = 0
############# year_model################
def setYear_model(self, year_model):
self.year_model = year_model
def getYear_model(self):
return self.year_model
############# Make################
def setMake(self, make):
self.make = make
def getMake(self):
return self.make
############# speed################
def setSpeed(self, speed):
if speed < 0:
print("Speed cannot be negative")
else:
self.speed = speed
def getSpeed(self):
return self.speed
def accelerate(self, speed):
self.speed += 5
return self.speed
def brake(self, speed):
self.speed -= 5
return self.speed
############# str ############
def __str__(self):
return "Make : " + self.make + ", Model Year :" + \
self.year_model + ", speed =" + str(self.speed)
我的实际计划
import CarDefinition
def main():
my_car = CarDefinition.Car("2008", "Honda Accord")
print(my_car)
# Accelerate 5 times
print ("Car is Accelerating: ")
for i in range(5):
my_car.accelerate()
print ("Current speed: ", my_car.getSpeed())
print()
# Break 7 times
print ("Car is braking: ")
for i in range(7):
my_car.brake()
print ("Current speed: ", my_car.getSpeed())
print("my_car values at prgram end:\n", my_car)
main()
答案 0 :(得分:1)
尝试这样的事情
def accelerate(self):
self.speed += 5
return self.speed
答案 1 :(得分:0)
你得到了哪些错误?
对于初学者,您是否正确创建了对象?
检查代码的这一行:my_car =("2008", "Honda Accord")
。
不应该是my_car = Car("2008", "Honda Accord")
吗?