未来電子テクノロジーでインターンをしている箕牧和廣です。
今回はipdbについて書いていこうと思います。
プログラミング初心者であるため、内容に誤りがあるかもしれません。
もし、誤りがあれば修正するのでどんどん指摘してください。
#ipdbとは
Pythonに標準で備わったデバッガであるpdbの拡張機能を提供している。
デバッグとはプログラムの誤りを見つけ、手直しすること。
それでは、まずインストール。
terminal
$ sudo pip install ipdb
#実際に動作させてみる
適当な名前のファイルを作成する。
今回はtest.py
というファイルを作成。
test.py
import ipdb
print ("debug program")
a = 10 / 3
b = 10.3 / 3.4
ipdb.set_trace()
print (a,b)
下記のコマンドで実行。
terminal
python3 -m ipdb test.py #ファイル名
すると以下のような画面に。
terminal
> /Users/mimakikazuhiro/Desktop/djangosw/test.py(1)<module>()
----> 1 import ipdb
2 print ("debug program")
3 a = 10 / 3
ipdb>
「どんな機能があるのかな〜」ということでとりあえず「h」を押してみる。
terminal
ipdb> h
Documented commands (type help <topic>):
========================================
EOF cl disable interact next psource rv unt
a clear display j p q s until
alias commands down jump pdef quit source up
args condition enable l pdoc r step w
b cont exit list pfile restart tbreak whatis
break continue h ll pinfo return u where
bt d help longlist pinfo2 retval unalias
c debug ignore n pp run undisplay
Miscellaneous help topics:
==========================
exec pdb
ipdb>
色々押してみる。
terminal
ipdb> n
> /Users/mimakikazuhiro/Desktop/djangosw/test.py(2)<module>()
1 import ipdb
----> 2 print ("debug program")
3 a = 10 / 3
terminal
ipdb> s
debug program
> /Users/mimakikazuhiro/Desktop/djangosw/test.py(3)<module>()
2 print ("debug program")
----> 3 a = 10 / 3
4 b = 10.3 / 3.4
terminal
ipdb> q
「q」で終了。
こんな感じで簡単にデバッグができるみたい。