|
之前調(diào)試python程序都是用print參數(shù),感覺有點(diǎn)弱爆啊,最近發(fā)現(xiàn)python也有類似C語言gdb的工具pdb,記錄下pdb的使用方法和心得。 先找了段簡單的測試程序: #!/usr/bin/python from ftplib import FTP import sys import socket import pdb def passwordCorrect(ip,port,username,password): try: client = FTP() pdb.set_trace() client.connect(ip,port) client.login(username,password) client.close() except Exception, e: pdb.set_trace() client.close() if str(e).find('unknown IP address')!=-1: return 2 return 0 print "correct" return 1 if __name__ == '__main__': socket.setdefaulttimeout(3) ret = passwordCorrect('127.0.0.1',21,'test','test') print "return is ",ret pdb的常用命令說明:
l #查看運(yùn)行到哪行代碼 調(diào)試記錄: pdb設(shè)置斷點(diǎn)可以在程序里加入: import pdb 在需要設(shè)置斷點(diǎn)的地方加入pdb.set_trace() 執(zhí)行python -m pdb test.py 1 [root@wh practice]# vim test.py 2 [root@wh practice]# python -m pdb test.py 3 > /home/practice/test.py(2)<module>() 4 -> from ftplib import FTP 5 (Pdb) c 6 > /home/practice/test.py(10)passwordCorrect() 7 -> client.connect(ip,port) 按c逐個(gè)執(zhí)行到下一個(gè)斷點(diǎn),按p ip 就可以查看變量ip的值 exit退出當(dāng)前函數(shù) 主要用到的功能就是這些,暫且先學(xué)這些 |
|
|