我有这段代码来计算两个坐标之间的距离。这两个函数都在同一个类中。
然而,如何在函数isNear中调用函数distToPoint ?
isNear
distToPoint
class Coordinates: def distToPoint(self, p): """ Use pythagoras to find distance (a^2 = b^2 + c^2) """ ... def isNear(self, p): distToPoint(self, p) ...
这是行不通的,因为distToPoint在你的类中,所以如果你想引用它,你需要用类名作为前缀,像这样:classname.distToPoint(self, p)。不过你不应该这样做。更好的方法是通过类实例(类方法的第一个参数)直接引用方法,如:self.distToPoint(p)。
classname.distToPoint(self, p)
self.distToPoint(p)
由于这些是成员函数,所以在实例self上将其作为成员函数调用。
self
def isNear(self, p): self.distToPoint(p) ...