inspect

参考:

実行中の関数名/メソッド名を動的に取得する | Hello.

inspect – 活動中のオブジェクトの情報を取得する | Python 3.x ドキュメント [公式]

currentframe

参考:

inspect.currentframe | Python 3.x ドキュメント [公式]

getframeinfo

参考:

inspect.getframeinfo | Python 3.x ドキュメント [公式]

Getting the function for a compiled function object – Stack Overflow

getmodule

フレームオブジェクトからコードが定義されたモジュールを取得する。

import inspect

def test():
    frame = inspect.currentframe()
    mod = inspect.getmodule(frame)
    print(f"{frame.f_code.co_name}() in '{mod.__name__}'")

test()Code language: Python (python)

※静的に取得したい場合は、func_name.__module__ を用いる。

参考:

inspect.getmodule | Python 3.x ドキュメント [公式]

Get __name__ of calling function’s module – Stack Overflow

_getframe

参考:

sys._getframe | Python 3.x ドキュメント [公式]

settrace

参考:

sys.settrace | Python 3.x Documentation [Official]

Hooking every function call – Stack Overflow

sys.settrace only getting called at function calls, not every line – Stack Overflow

Why doesn’t sys.settrace fire when there’s no main function? – Stack Overflow

引数を取得する

参考:

Python 3 で 関数の内部で自分自身の引数を取得する方法 | Tottoto Note

inspect.getargvalues | Python 3.x ドキュメント [公式]

pdb

ドキュメント:

pdb – Python デバッガ | Python 3.x ドキュメント [公式]

trace

ドキュメント:

trace – 文実行のトレースと追跡 | Python 3.x ドキュメント [公式]

参考:

Tracing Call Flows in Python | Programmer’s Notebook

Trace lines as they are executed, but save to file, rather than stdout – Stack Overflow

ipdb

リポジトリ:

gotcha/ipdb: Integration of IPython pdb – GitHub

入手:

ipdb | PyPI

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA