Linux下调试python
原文地址:http://www.cnblogs.com/chinasun021/archive/2013/03/19/2969107.html
先找了段簡單的測試程序:
復制代碼
!/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 #查看運行到哪行代碼
n #單步運行,跳過函數
s #單步運行,可進入函數
p 變量 #查看變量值
b 行號 #斷點設置到第幾行
b #顯示所有斷點列表
cl 斷點號 #刪除某個斷點
cl #刪除所有斷點
c #跳到下一個斷點
r #return當前函數
exit #退出
調試記錄:
pdb設置斷點可以在程序里加入:
import pdb
在需要設置斷點的地方加入pdb.set_trace()
執行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)()
4 -> from ftplib import FTP
5 (Pdb) c
6 > /home/practice/test.py(10)passwordCorrect()
7 -> client.connect(ip,port)
復制代碼
按c逐個執行到下一個斷點,按p ip 就可以查看變量ip的值
exit退出當前函數
主要用到的功能就是這些,暫且先學這些
總結
以上是生活随笔為你收集整理的Linux下调试python的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: caffe:Data 层
- 下一篇: Deep Residual Learni