Python のデバッガといえば言語そのものに付属している pdb がまず挙げられるけど、pdb は実行中の行以外を確認できなくて正直かなり使いづらさを感じる。
それ以外の Python のデバッガとしては、以前にこのブログでも
winpdb を紹介しているし、それ以外だと Eclipse PyDev プラグインの GUI デバッガをよく使っている。
とはいえ、これら二つは動作に X Window System が必要だったり、プラットフォームとして Eclipse や wxPython をインストールしなきゃいけないのが結構手間になる。
今回紹介する PudB は動作に特別なプラットフォームが不要でなおかつ pdb より便利な CUI のデバッガだ。
インストールはいつも通り PyPI から PIP で。
必要に応じて sudo などする。
$ pip install pudb
使い方は至って簡単。
普段 python で実行しているところを…
$ python sample.py
pudb に置き換えるだけ。
$ pudb sample.py
起動するとこんな画面が表示される。
CUI だけど見やすそう。

次に PudB の環境設定を促すウィンドウが表示される。
表示方法などをお好みの設定にする。

次はいよいよデバッガの操作画面に移る。
操作方法は一般的なデバッガと同じかな。
n で次の行へ (ステップオーバー)、s で関数などの内部に入る (ステップイン)、ブレークポイントを打つときは b など。

分からないときは ? キーを押せば Help ウィンドウが表示される。

また Ctrl + x で下側に表示されている Python の REPL ウィンドウに制御が移る。
現在の変数の状態や、この時点でこの処理をするとどんな結果になるか、といったことが確認できる。
右側には実行中の状態を表すウィンドウが並んでいる。

終了するときはもう一度 Ctrl +x を押して制御をメインのウィンドウに戻してから q キーで。
最初の選択肢に Restart があるところなんか、かゆいところに手が届くね。

いいかんじ。
PudB は手軽さと使いやすさを兼ね備えたデバッガだと思う。