一般開發(fā)者都是在 IDE 中進行程序的調試,當然,有 IDE 的話,當然首選 IDE 進行調試。 但是,有時我們的業(yè)務場景,限制只能在 Linux 命令行模式進行調試。 這時該怎么辦呢? 今天的Python學習教程,就給大家介紹一個 Linux 下調試 Python 程序的工具。 pdb簡介pdb 調試器是 Python 標準庫提供的,因此最為方便,不需要安裝其他組件,直接 import 后就能使用。 pdb 調試器提供了調試所需的大多數功能,如斷點、單行步進、堆棧幀的檢查等等。 常用命令l # 查看運行到哪行代碼 n # 單步運行,跳過函數 s # 單步運行,可進入函數 p 變量 # 查看變量值 b 行號 # 斷點設置到第幾行 b # 顯示所有斷點列表 cl 斷點號 # 刪除某個斷點 cl # 刪除所有斷點 c # 跳到下一個斷點 r # return 當前函數 exit # 退出 復制代碼 使用示例本文 Python 環(huán)境:Python 3.5.2 我們先準備一小段演示程序: # -*- coding: utf-8 -*- def add(a, b): return a + b if __name__ == '__main__': print("===start===") c = add(1, 3) print("===end===") 復制代碼 使用方法 1: 運行 pdb 的最簡單方法是從命令行,將程序作為參數傳遞來調試。 $ python -m pdb test_pdb.py 復制代碼 這時,就開始單步執(zhí)行了。 這種方法對代碼沒有侵入性,但是每次都需要設置斷點。 使用方法 2: 在代碼頭部引入 pdb,然后可以在代碼里,通過 pdb.set_trace() 來設置斷點: # -*- coding: utf-8 -*- import pdb def add(a, b): pdb.set_trace() return a + b if __name__ == '__main__': print("===start===") pdb.set_trace() c = add(1, 3) print("===end===") 復制代碼 此時,運行程序,就會自動跳轉到設置的斷點處: 本期Python學習教程總結沒了圖形化頁面,調試只能這么來了,不過還好,pdb 使用看著不難吧。 其實還有一些增強的調試器,比如 IPython 的 ipdb 和 pdb++,它們一般都提供了更好的用戶體驗,添加了有用的額外功能,例如語法突出高亮、更好的回溯和自省。 |
|
來自: 千鋒Python學堂 > 《Python基礎教程分享》