クラス内のメンバー関数へのアクセス
Python では、クラスに特定のタスクを実行するためのさまざまなメソッドを含めることができます。一般的なシナリオの 1 つは、同じクラス内に 2 つのメソッドがあり、一方のメソッドが他方を呼び出すというものです。ただし、これを実現するための構文は、すぐには明らかではないかもしれません。
シナリオ例
次のコード スニペットを考えてみましょう。
class Coordinates: def distToPoint(self, p): # Calculate distance using Pythagoras def isNear(self, p): distToPoint(self, p) # ...
この中でたとえば、Coowned クラスは 2 つのメソッドを定義します。1 つはこの座標と別の点の間の距離を計算する distToPoint です。 isNear は、この座標が指定された点の近くにあるかどうかを確認します。私たちの目標は、isNear 内で distToPoint を呼び出すことです。
解決策: メンバー関数呼び出しの使用
同じクラス内でメンバー関数を呼び出すには、構文 self を使用します。< ;関数名>(引数)。この場合、self はクラスの現在のインスタンスを指し、function_name は呼び出したい関数の名前です。
したがって、isNear メソッドでは、次のように distToPoint を呼び出します。
def isNear(self, p): self.distToPoint(p) # ...
このアプローチを使用すると、同じクラス内からメンバー関数をシームレスに呼び出すことができます。
以上が同じ Python クラス内で、あるメンバー関数を別のメンバー関数から呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。