0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ipdbで手軽にデバッグ

Last updated at Posted at 2019-12-17

未来電子テクノロジーでインターンをしている箕牧和廣です。
今回は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」で終了。
こんな感じで簡単にデバッグができるみたい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?