我对 OOP 相当陌生,我只是在 Python 中玩弄它,遇到了一些我无法解释的事情,所以希望你们能够提供帮助。
我在玩下面的代码:
class Car():
def __init__(self, brand, model, speed):
self.brand = brand
self.model = model
self.speed = speed
def increase_speed(self):
return self.speed + 1
def decrease_speed(self, decrease_by):
return self.speed - decrease_by
car1 = Car("tesla","x",30)
print(car1.brand)
print(car1.speed)
print(car1.increase_speed())
print(car1.speed)
print(car1.decrease_speed(10))
我的问题是,我期望提高速度后,car1 的速度将是 31,但它打印出 30。为什么会这样,应该如何编写代码以使速度变为 31?
最佳答案
def increase_speed(self):
self.speed += 1
return self.speed
以前您没有增加速度,而只是返回一个等于速度加 1 的值。同样,更改您的 reduction_speed 函数。
关于python - 难以理解 Python OOP,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55182511/