當(dāng)手邊沒有IDE,面對著python調(diào)試犯愁時(shí),你就可以參考下本文;(pdb 命令調(diào)試)
參考:http://docs.python.org/library/pdb.html
和 (pdb)help
首先你選擇運(yùn)行的 py
python -m pdb myscript.py
(Pdb) 會(huì)自動(dòng)停在第一行,等待調(diào)試,這時(shí)你可以看看 幫助
(Pdb) h
說明下這幾個(gè)關(guān)鍵 命令
>斷點(diǎn)設(shè)置
(Pdb)b 10 #斷點(diǎn)設(shè)置在本py的第10行
或(Pdb)b ots.py:20 #斷點(diǎn)設(shè)置到 ots.py第20行
刪除斷點(diǎn)(Pdb)b #查看斷點(diǎn)編號(hào)
(Pdb)cl 2 #刪除第2個(gè)斷點(diǎn)
>運(yùn)行
(Pdb)n #單步運(yùn)行
(Pdb)s #細(xì)點(diǎn)運(yùn)行 也就是會(huì)下到,方法
(Pdb)c #跳到下個(gè)斷點(diǎn)
>查看
(Pdb)p param #查看當(dāng)前 變量值
(Pdb)l #查看運(yùn)行到某處代碼
(Pdb)a #查看全部棧內(nèi)變量
>如果是在 命令行里的調(diào)試為:
望那位知道的,能一起補(bǔ)全這篇文章。
整理 www.aygfsteel.com/Good-Game
參考:http://docs.python.org/library/pdb.html
和 (pdb)help
首先你選擇運(yùn)行的 py
python -m pdb myscript.py
(Pdb) 會(huì)自動(dòng)停在第一行,等待調(diào)試,這時(shí)你可以看看 幫助
(Pdb) h
說明下這幾個(gè)關(guān)鍵 命令
>斷點(diǎn)設(shè)置
(Pdb)b 10 #斷點(diǎn)設(shè)置在本py的第10行
或(Pdb)b ots.py:20 #斷點(diǎn)設(shè)置到 ots.py第20行
刪除斷點(diǎn)(Pdb)b #查看斷點(diǎn)編號(hào)
(Pdb)cl 2 #刪除第2個(gè)斷點(diǎn)
>運(yùn)行
(Pdb)n #單步運(yùn)行
(Pdb)s #細(xì)點(diǎn)運(yùn)行 也就是會(huì)下到,方法
(Pdb)c #跳到下個(gè)斷點(diǎn)
>查看
(Pdb)p param #查看當(dāng)前 變量值
(Pdb)l #查看運(yùn)行到某處代碼
(Pdb)a #查看全部棧內(nèi)變量
>如果是在 命令行里的調(diào)試為:
import pdb
def tt():
pdb.set_trace()
for i in range(1, 5):
print i
>>> tt()
#這里支持 n p c 而已
> <stdin>(3)tt()
(Pdb) n
.
上面一般的調(diào)試工具大體上都能解決了,還有其他什么 調(diào)試時(shí)修改變量值,回到某斷點(diǎn)等 ,可以在 pdb 中 help 下 (其實(shí)我也不太明白)pdb.set_trace()
for i in range(1, 5):
print i
>>> tt()
#這里支持 n p c 而已
> <stdin>(3)tt()
(Pdb) n

望那位知道的,能一起補(bǔ)全這篇文章。
整理 www.aygfsteel.com/Good-Game