如何将类方法的默认参数设置为等于类属性 (Python)

3 python class

我有一堂课,比如:

class Cheetah:
    def __init__(self):
        self.speed = 20
    def move(self, speed):
        ....
Run Code Online (Sandbox Code Playgroud)

如何将speed方法中的默认值设置move为self.speed?

我已经尝试过speed = self.speed,但出现语法错误。

谢谢,

杰克

Dan*_*man 5

你不能,但没有理由这样做。默认为 None,然后只需在方法中检查:

def move(self, speed=None):
    if speed is None:
        speed = self.speed
Run Code Online (Sandbox Code Playgroud)

  • “speed”参数的默认值是在定义“Cheetah”的任何实例之前设置的;你*必须*这样做。 (2认同)