birdseye是乙個python偵錯程式,它在函式呼叫中記錄表示式的值,並讓你在函式退出後輕鬆檢視它們,例如:
無論你如何執行或編輯**,都可以使用birdseye。只需要你安裝好依賴:
pip install birdseye
並在**函式上方新增 @eye& 裝飾器(如上**所示),即可根據需要執行函式,並在瀏覽器中檢視結果。
它還可以與一些常用工具整合在一起,如 pycharm 和 vscode,以提供更流暢的體驗,後續我們會介紹如何將其與這些工具結合使用。
它不僅僅能夠單步執行,還能在迴圈迭代中來回移動,並檢視所選表示式的值如何變化:
通過 birdseye 你能很容易地知道哪些表示式引發了異常:
你也能夠展開具體的資料結構和物件以檢視其內容:
呼叫會按功能組織(檔案組織)並進行時間排序進行顯示,讓你一目了然地看到發生了什麼:
首先,使用 pip 安裝 birdseye :
pip install birdseye
然後,對需要進行除錯的函式使用eye裝飾器:
from birdseye import eye
@eye
def foo():
在你呼叫該函式完成後,在終端執行命令開啟birdseye的web服務:
python -m birdseye
在瀏覽器開啟 http://localhost:7777 就能看到需要除錯的函式執行流程了。點選下圖的按鈕即可跳轉到最新的函式呼叫。
在 www.cppcns.compycharm 的 settings 中,點選 plugins 外掛程式市場搜尋 birdseye 點選 install 安裝。
安裝完成後重啟pycharm,就可以在www.cppcns.com pycharm 中使用 birdseye了:
預設情況下,該外掛程式還可以為你自動執行bird程式設計客棧seye伺服器,因此就不需要輸入 python -m birdseye 那行命令了。
在vscode中繼承除錯birdseye也非常方便,點選左側的擴充套件商店,在彈出程式設計客棧框中輸入搜尋 birdseye,並點選 install 安裝:
安裝完成後,點選 f1 輸入birdseye,就能顯示除錯介面:
如果無法正常顯示右側除錯介面,並提示未安裝birdseye,但實際上你已經安裝成功了,這一般是路徑錯誤導致的,請在擴充套件設定中手動更改python路徑為你安裝了birdseye的python。
birdseye 是乙個非常強大的除錯工具,但我認為這還是有缺點可以改善的:
1.為了防止堆疊過大,每個迭代它最多隻保留6個(前
三、末三)元素:
因此如果你想看一些特殊元素值的執**況,它可能不會如你所願。
不過,不需要擔心某些分支你除錯不到,因為 birdseye 有個保險機制:如果乙個表示式僅在某種特定情況下會被執行,那麼執行時的元素也會被加入到可除錯元素中。
2.由於需要記錄堆疊,程式會大大減慢速度,因此它絕對不適合上到生產環境。
3.每個函式呼叫,birdseye 都需要收集許多資料,對於某些極其複雜的函式呼叫,可能會引發記憶體問題。
如果你不擔心這三個缺點,而且希望能快速方便地看到函式中不同分支的執**況,那麼birdseye就是你的不二之選。
除錯工具 之Python除錯工具pycharm
1 pycharm的安裝 pycharm是一款非常好用的python ide,提供專業版和社群版,就像eclipse和myeclipse一樣,專業版是收費的,而社群版是免費的但功能就沒有專業版的功能強大。1.2 安裝 這裡就不必細說,直接next就ok ps 安裝完成後一定要執行 1.3 破解 採用...
Python除錯工具pdb
本文 在python中使用pdb模組可以進行除錯 import pdb pdb.set trace 也可以使用python m pdb mysqcript.py這樣的方式 pdb 會自動停在第一行,等待除錯,這時你可以看看 幫助 pdb h 說明下這幾個關鍵 命令 斷點設定 pdb b 10 斷點設...
gflags除錯工具
gflags windows除錯工具。使用它幫助我解決了瞎調了一整天的記憶體問題。由於使用了已經delete的指標,vs提示位置又錯誤的情況下,瞎調了一通。怎麼想那塊也不會有問題,可是抱著對vs的信任把錯就歸咎於自己吧!偶然的機會,搜到了gflags,抱著試一試的心態,使用該工具 1.安裝 debu...