2

%debug魔法でデバッグしている IPython ノートブックにトレースバックがあります。トレースバック フレームのオブジェクトの 1 つを IPython グローバル名前空間の変数に割り当てて、ipdbプロンプトの外でそれをいじることができるようにしたいと思います (これはかなり不格好です)。これを行う最も簡単な方法は何ですか?

今のところ、ipdb でオブジェクトをピクルし、グローバル名前空間からアンピクルすることでこれを解決しましたが、もっと良い方法があるはずです。

4

1 に答える 1

1

1 つの方法は、値をモジュール メンバー(モジュールのスコープ内のグローバル var のようなもの)に割り当てることです。これpdbは、モジュールが既に にあるため、セッションを終了した後も保持されsys.modules、そこにとどまります。

1% os.path.exists(3254)
...
TypeError: coercing to Unicode: need string or buffer, int found

2% %debug
...
ipdb> os.MYVAR = 234
ipdb> q

3% os.MYVAR
3= 234
于 2015-04-16T05:03:01.500 に答える