Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Python を初めて間もない頃、自分も print デバッグしてました。効率の悪さを認識しつつも、IDEを導入してデバッグする方法を調べてセッティングして、という手順が面倒でずっと放置してました。 // 普段は vim で開発してます そうこうしてたら print デバッグではどうにもならないバグにぶち当たり、仕方なくデバッグポイントを置く方法を調べたわけです。するとどうでしょう。 ソースコード中に以下の一文を入れるだけではないですか。 import pdb; pdb.set_trace() たったこれだけで、上の一文を挿入した行で処理が停止し、コンソール上でステップ実行が出来るようになります。最高かよ。 個人的にですが、デバッガー起動中によく使うコマンドとしては以下です。 コマンド 説明 s(tep) ステップイン n(ext) ステップオーバー r(eturn) ステップアウト l(
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. pdb — Python デ
概要 pdb を利用してみる。 ドキュメント 公式ドキュメント「pdb — The Python Debugger」に概要が書いてある。 使い方 スクリプトを直接起動してデバッグする方法と、インタラクティブshell で起動する方法があるが、ここでは、スクリプトを起動してデバッグする方法で書く。 以下がデバッグするスクリプトのサンプル「even.py」。 自分の場合、スクリプトを直接デバッグすることがあまりなく、デバッグするのはライブラリとかをunittest経由でデバッグすることがが多いのでサンプルは unittest で書いている。 以下の例はクラス内の関数が偶数だけ返す所でバグがあり、奇数を返すようになっている。そんなに良い例ではないかも。 #!/usr/bin/env python # -*- coding: utf-8 -*- import unittest class Samp
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く