0

Windowsでpython 2.5を使用しています。私がしているのは、大きなファイル (18MB - 辞書のリスト) を unpickle し、その値の一部を変更することだけです。これで問題なく動作します。しかし、いくつかのプリントを追加すると、IDLE が再起動します。そして奇妙なことに、プリントを追加した場所でそれが起こっているようです. 行ごとにコメントを付けたりコメントを外したりすることで、これを理解しました。プリントの周りに try キャッチを追加しましたが、何もキャッチできません。IDLE はいつ再起動しますか? そして、それがスローする例外またはエラーをキャッチするにはどうすればよいですか (そうである場合)?

4

2 に答える 2

1

IDLEではなくコマンドラインからスクリプトを実行してみましたか?コマンドプロンプトを開き、python入力してPythonインタープリターに入ります。そこでもクラッシュするかどうかを確認してください。

次に、 Pythonスクリプトのデバッグにpdbモジュールを使用してみてください。これは、デバッグセッション中の任意の時点でコードをステップ実行して値を確認できるため、printステートメントよりもはるかに効果的です。

import pdb

test_var = 'this is a test'

# set this whenever you want to start a breakpoint
pdb.set_trace()

pdbデバッグセッションでは、「n」を押して行をステップ実行し、printステートメントを使用して値を直接出力できます。たとえば、次のことができます。

> print test_var
'this is a test'
于 2009-12-16T01:12:33.250 に答える
0

デバッガーを有効にして、何かが表示されるかどうかを確認します。

于 2009-12-16T01:12:12.123 に答える