Slide 1

Slide 1 text

Pythonのデバッガーを 使おう @tokibito

Slide 2

Slide 2 text

Pythonのプログラムをデバッグする • デバッグ方法は色々 • print関数を入れる? • ロギングlogging.debug関数を使う? • 組み込みのデバッガーpdbモジュール

Slide 3

Slide 3 text

pdbモジュール • https://docs.python.org/ja/3/library/pdb.html • 標準で入っている • CUIで使える • Pythonがあれば通常どこでも使えるので覚えておくとよい

Slide 4

Slide 4 text

ブレークポイントをコード内に指定 • 組み込みのbreakpoint()関数 • import pdb; pdb.set_trace()

Slide 5

Slide 5 text

pdbから起動する • python -m pdb my-script.py

Slide 6

Slide 6 text

pdbのコマンド • b: ブレークポイント指定 • ファイル名:行番号 • c: ブレークポイントまで継続 • s: ステップ実行 • l: 現在の実行位置を表示 • n: 次の呼び出しまで進む • q: 終了

Slide 7

Slide 7 text

pdb以外のデバッガ • ipdb • IPythonのインターフェースなので使いやすい • pudb • CUIだがリッチなデバッガー

Slide 8

Slide 8 text

他のデバッグ方法 • VSCodeでデバッグする • こちらのほうが手軽