Pythonから呼び出された関数からローカル変数を取得します。これを行う方法はありますか?私はこれがほとんどのプログラミングでは正しくないことを認識していますが、基本的にはデバッガを構築しています。例:Pythonの呼び出しネームスペースからローカルに移動する
def show_locals():
# put something in here that shows local_1.
local_1 = 123
show_locals() # I want this to show local_1.
の本文には何が入っていますか?呼び出し文を変更する必要がある場合、最小限の変更はできますか?
注: が発信者とは別のモジュールにある場合は、これが動作する必要があります。
素敵で、見栄えが良い。 – Peter
スーパーに役立ちます。ありがとう。 –
よろしく!私は、あなたの解決策を、別の解決策を使って重大なパフォーマンスの問題にぶつけた後に見つけました: 'caller = inspect.stack()[1] [0]; myvars = caller.f_locals'です。あなたの道はずっと速いです。 – TheGerm