本篇內(nèi)容介紹了“如何利用PDB實(shí)現(xiàn)Python程序調(diào)試”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)公司始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營(yíng)理念,通過多達(dá)十年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的全網(wǎng)整合營(yíng)銷推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:成都報(bào)廢汽車回收等企業(yè),備受客戶稱譽(yù)。
如何進(jìn)行Python程序調(diào)試?
1.加入斷點(diǎn)
在需要插入斷點(diǎn)的地方,加入紅色部分代碼:如果_DEBUG值為True,則在該處開始調(diào)試(加入_DEBUG的原因是為了方便打開/關(guān)閉調(diào)試)。
#!/usr/bin/python _DEBUG=True def debug_demo(val): if _DEBUG == True: import PDB PDB.set_trace() if val <= 1600 : print "level 1" print 0 elif val <= 3500 : print "level 2" print (val - 1600) * 0.05 elif val <= 6500 : print "level 3" print (val - 3500) * 0.10 + (3500-1600) * 0.05 else: print "level 4" print (val - 6500) * 0.20 + (6500-3500) * 0.10 + (3500-1600) * 0.05 #~def debug_demo if __name__ == "__main__": debug_demo(4500)
2.開始運(yùn)行Python程序調(diào)試
運(yùn)行程序./debug_demo.py,得到
> /usr/local/qspace/user_network/debug_demo.py(7)debug_demo() -> if val <= 1600 : (PDB)
-> val <= 1600 : 指示當(dāng)前執(zhí)行的語(yǔ)句,(PDB)等待你的調(diào)試指令. PDB的指令很豐富,輸入h指令可以查看指令的使用方法。下面簡(jiǎn)單介紹Python程序調(diào)試常用指令:
查看代碼上下文,l(小寫L)
(PDB) _DEBUG=True def debug_demo(val): if _DEBUG == True: import PDB PDB.set_trace() -> if val <= 1600 : print "level 1" print 0 elif val <= 3500 : print "level 2" print (val - 1600) * 0.05 (PDB)
左邊是行號(hào),右邊是代碼正文。
監(jiān)視變量:p 變量名
(PDB) p val 4500 (PDB)
單步執(zhí)行: n
-> elif val <= 3500 : (PDB) import PDB PDB.set_trace() if val <= 1600 : print "level 1" print 0 -> elif val <= 3500 : print "level 2" print (val - 1600) * 0.05 elif val <= 6500 : print "level 3" print (val - 3500) * 0.10 + (3500-1600) * 0.05
加入斷點(diǎn):b 行號(hào)
(PDB) b 14
運(yùn)行到斷點(diǎn): c
(PDB) c > /***** -> print "level 3" (PDB) print 0 elif val <= 3500 : print "level 2" print (val - 1600) * 0.05 elif val <= 6500 : B-> print "level 3" print (val - 3500) * 0.10 + (3500-1600) * 0.05 else: print "level 4" print (val - 6500) * 0.20 + (6500-3500) * 0.10 + (3500-1600) * 0.05
執(zhí)行到函數(shù)返回前: r
(PDB) r level 3 195.0 --Return-- > /****() ->None -> print (val - 3500) * 0.10 + (3500-1600) * 0.05 (PDB)
說明:
PDB還有很多其他很多有用的指令,讀者可以自行探索。輸入h,h 命令。就可以得到命令的詳細(xì)幫助。
“如何利用PDB實(shí)現(xiàn)Python程序調(diào)試”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
網(wǎng)站標(biāo)題:如何利用PDB實(shí)現(xiàn)Python程序調(diào)試
瀏覽路徑:http://jinyejixie.com/article14/ghhige.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、自適應(yīng)網(wǎng)站、網(wǎng)站維護(hù)、網(wǎng)站建設(shè)、營(yíng)銷型網(wǎng)站建設(shè)、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)