我对 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/

10-12 22:06