ホームページ > バックエンド開発 > Python チュートリアル > Pythonで呼び出し元のメソッド名を取得するにはどうすればよいですか?

Pythonで呼び出し元のメソッド名を取得するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-07 07:56:13
オリジナル
429 人が閲覧しました

How to Get the Caller's Method Name in Python?

Python で呼び出し元のメソッド名にアクセスする

呼び出されたメソッド内で呼び出し元のメソッド名を取得すると、デバッグやイントロスペクションに役立ちます。これを実現するために、Python はコード オブジェクトを検査するための一連の関数を提供する検査モジュールを提供します。

inspect の getframeinfo 関数と currentframe 関数を利用すると、コールスタックにアクセスし、呼び出し元のフレームを取得できます。コールスタックを反復処理することで、呼び出し元の名前を識別できるようになります。

このアプローチを示す例は次のとおりです:

import inspect

def method1():
    frame = inspect.currentframe()
    outer_frame = inspect.getouterframes(frame, 2)[1]
    print(f"Caller's name: {outer_frame[3]}")
    method2()

def method2():
    frame = inspect.currentframe()
    outer_frame = inspect.getouterframes(frame, 2)[1]
    print(f"Caller's name: {outer_frame[3]}")

method1()
ログイン後にコピー

このコードを実行すると、次の出力が表示されます:

Caller's name: method1
Caller's name: method2
ログイン後にコピー

イントロスペクションはデバッグや開発には有益ですが、運用関連ではあまり依存しないでください。機能。

以上がPythonで呼び出し元のメソッド名を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート