Featured image of post Pythonスクリプトが例外で落ちた瞬間に対話デバッガを起動する

Pythonスクリプトが例外で落ちた瞬間に対話デバッガを起動する

これはなに Link to this heading

Effective Python 第2版の項目80で紹介されているpdbを使った方法が便利という話。

コマンド Link to this heading

実行時に例外が発生するPythonスクリプトをデバッグする際に、下記のコマンドで実行すると、例外が発生した瞬間に自動で対話デバッガが起動する。

python -m pdb -c continue your_script.py

自動でデバッガが起動してくれるので、実行時にそのままバグの原因を調査できてとても便利。

ちなみに、例外の発生するところがわかっているなら、組み込み関数のbreakpoint()を使うほうが簡単。

エイリアス Link to this heading

毎回コマンドを打つのは面倒なので、エイリアスを設定しておくと便利。

alias pydbg='python -m pdb -c continue'

これで、pydbg your_script.pyと打つだけで、例外が発生した瞬間にデバッガが起動する。

ファイル名補完も効くようにすると便利。

complete -o default -o nospace -F _filedir pydbg

これらを~/.bashrcなどに追加して、source ~/.bashrcで反映させると、いつでも簡単にデバッグができるようになる。

参考文献・URL Link to this heading

Effective Python 第2版 image

Effective Python 第2版

www.oreilly.co.jp favicon image www.oreilly.co.jp
Licensed under CC BY-NC-SA 4.0
最終更新 8月 03, 2025
Hugo で構築されています。
テーマ StackJimmy によって設計されています。