タグ

pdbに関するramda-phiのブックマーク (2)

  • 任意の行でデバッグを開始する

    Python 2.7.3で、コード中の任意の位置でデバッガpdbを起動する方法。 このコードをブレークしたい行の手前に挿入しておく。 import pdb; pdb.set_trace() 挿入したスクリプトをシェルで実行すると、デバッガが起動する。よく使うコマンドは次の5つ。 s(tep) # ステップイン n(ext) # ステップオーバー r(eturn) # ステップアウト b(reak) n # 実行中のファイルのn行目にブレークポイントを設定 c(ontinue) # 次のブレークポイントまで実行 l(ist) # 実行中のコードを表示 h(elp) # ヘルプを表示 q(uit) # デバッガを終了 デバッガコマンド以外はPythonの文として実行されるので、変数の値を確認したりできる。 print varname References26.2. pdbPython

  • 211:pythonスクリプトをデバッグする

    Python デバッガ pdb Python には pdb というデバッガが付属しています。 例として次のようなコード spam.py をデバッグしてみます。 x の初期値を 6 とし 3, 2, 1, 0 で割り算していきます。 x の値は for 文が回るたびに 2, 1, 1 となり、4 周目の 0 で割り算された時点で例外 ZeroDivisionError? が発生します。 この例外は処理されることは無く、異常終了します。 # coding: utf-8 def div(x, y): return x / y def main(): x = 6 for i in [3, 2, 1, 0]: x = div(x, i) return x if __name__ == '__main__': main() デバッグを開始する スクリプトのデバッグを開始するには、次のようにします。 C

  • 1