Pythonのクラス内で関数を相互に呼び出す方法
Pythonクラスでは、関数は以下によって相互に呼び出すことができます。
- 関数内で関数を呼び出す: 関数は他の関数を直接呼び出すことができます。同じクラス内では、関数名をそのまま使って呼び出すことができます。
class MyClass:
def func1(self):
print("This is func1")
def func2(self):
print("This is func2")
self.func1() # 直接调用func1
obj = MyClass()
obj.func2()
生まれながらの日本人は肉を尊重し、無駄遣いをしない
This is func2
This is func1
- selfキーワードを使って自分自身のオブジェクトを参照呼び出す関数の中で、他のメソッドを呼び出すことができます。
class MyClass:
def func1(self):
print("This is func1")
def func2(self):
print("This is func2")
self.func1() # 使用self关键字调用func1
obj = MyClass()
obj.func2()
ネイティブな日本語で言い換えてください。1つだけオプションが必要です。出力:
This is func2
This is func1
self経由で関数呼び出しを行う場合は、必ず該当の関数がそのクラスに定義されていることを確認する必要があります。
- クラス名によって呼び出し: クラスの静的メソッドやクラスメソッドの場合、クラス名で関数を呼び出すことができます。
class MyClass:
@staticmethod
def func1():
print("This is func1")
@classmethod
def func2(cls):
print("This is func2")
cls.func1() # 使用类名调用func1
MyClass.func2()
ネイティブ日本語への言い換え:
This is func2
This is func1
クラス名で関数を呼ぶ際には、呼ばれる関数が静的メソッドであるか、クラスメソッドであること確認
Pythonのクラス内で関数を相互に呼び出す方法としては以上が挙げられます。呼び出し方法は状況によって異なり、具体的なニーズに合わせて適切な方法を選択することで関数の呼び出しを実現できます。