吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python調試工具-Birdseye

汽車電子技術 ? 來源:Python實用寶典 ? 作者:Ckend ? 2023-02-24 10:55 ? 次閱讀

Birdseye是一個Python調試器,它在函數調用中記錄表達式的值,并讓你在函數**退出**后輕松查看它們,例如:

poYBAGP4JlaAPcxkAAA65j9ZkJE216.png

無論你如何運行或編輯代碼,都可以使用Birdseye。只需要你安裝好依賴:

pip installbirdseye


并在代碼函數上方添加@eye裝飾器(如上動圖所示),即可根據需要運行函數,并在瀏覽器中查看結果。

它還可以與一些常用工具集成在一起,如 Pycharm 和 Vscode,以提供更流暢的體驗,后續我們會介紹如何將其與這些工具結合使用。

它不僅僅能夠單步執行,還能在循環迭代中來回移動,并查看所選表達式的值如何變化:

pYYBAGP4JmiAd-QRAACPkn4jh9k077.png

通過 birdseye 你能很容易地知道哪些表達式引發了異常:

poYBAGP4JnKAS_hrAAA4OrDbEx0314.png

你也能夠展開具體的數據結構和對象以查看其內容:

poYBAGP4JnuAHEAMAAFOj0GEsow028.png

調用會按功能組織(文件組織)并進行時間排序進行顯示,讓你一目了然地看到發生了什么:

poYBAGP4JoaAMlbBAACUKykD7Rs403.png

1.快速上手

首先,使用 pip 安裝 birdseye :

pip installbirdseye

然后,對需要進行調試的函數使用eye裝飾器:

frombirdseye importeye@eyedeffoo():

在你調用該函數完成后,在終端運行命令打開Birdseye的Web服務:

python -m birdseye

pYYBAGP4JpWAaf6NAADa4RP-e3U984.png

在瀏覽器打開http://localhost:7777就能看到需要調試的函數執行流程了。點擊下圖的按鈕即可跳轉到最新的函數調用。

poYBAGP4Jp-AOiT3AAAL4JrP58A318.png

2.在Pycharm中集成調試

在 Pycharm 的 Settings 中,點擊 Plugins 插件市場搜索birdseye點擊 install 安裝。

poYBAGP4JqqAWvJ9AADWXVUPySI727.png

安裝完成后重啟Pycharm,就可以在 Pycharm 中使用 birdseye了:


poYBAGP4JrSAA-ZLAAD89SXJHGA723.png

pYYBAGP4JsKAXZ-wAAEZFlcJS1M566.png

pYYBAGP4Js2ACkx2AAD0qD8Pl4A918.png


默認情況下,該插件還可以為你自動運行Birdseye服務器,因此就不需要輸入 python -m birdseye 那行命令了。

3.在VSCode中集成調試

在VSCode中繼承調試Birdseye也非常方便,點擊左側的擴展商店,在彈出框中輸入搜索 birdseye,并點擊 install 安裝:

pYYBAGP4JtiAFioPAAAorjUdQO8943.png



安裝完成后,點擊 F1 輸入Birdseye,就能顯示調試界面:

poYBAGP4JuSAfQe5AAArNSXLPeE642.png

poYBAGP4Ju-ALbwTAADYZfkwNVk090.png

如果無法正常顯示右側調試界面,并提示未安裝birdseye,但實際上你已經安裝成功了,這一般是路徑錯誤導致的,請在擴展設置中手動更改python路徑為你安裝了Birdseye的Python。

pYYBAGP4JvqAceWZAADd0kyO2nw804.png

4.美中不足

Birdseye 是一個非常強大的調試工具,但我認為這還是有缺點可以改善的:

1.為了防止堆棧過大,每個迭代它最多只保留6個(前三、末三)元素:

pYYBAGP4JwaAVXzKAABaGTcIU30654.png

因此如果你想看一些特殊元素值的執行情況,它可能不會如你所愿。

不過,不需要擔心某些分支你調試不到,因為 birdseye 有個保險機制:如果一個表達式僅在某種特定情況下會被執行,那么執行時的元素也會被加入到可調試元素中

2.由于需要記錄堆棧,程序會大大減慢速度,因此它絕對不適合上到生產環境。

3.每個函數調用,Birdseye 都需要收集許多數據,對于某些極其復雜的函數調用,可能會引發內存問題。

如果你不擔心這三個缺點,而且希望能快速方便地看到函數中不同分支的執行情況,那么Birdseye就是你的不二之選。

我們的文章到此就結束啦,如果你喜歡今天的Python 實戰教程,請持續關注Python實用寶典。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62968
  • 調試器
    +關注

    關注

    1

    文章

    306

    瀏覽量

    23830
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85037
收藏 人收藏

    評論

    相關推薦

    FPGA調試工具-chipscope

    FPGA調試工具chipscope,學習與使用FPGA必用的工具。。
    發表于 03-23 09:45 ?86次下載

    MCU51的串口調試工具

    MCU51的串口調試工具:本站會員 gxujjd 及sltian 推薦的Mcu51網站的免費串口調試工具。此版本使用C++Builder編寫.
    發表于 01-16 11:53 ?126次下載

    串口調試工具

    串口調試工具 便于單片機下載 串口調試工具 串口調試工具
    發表于 11-20 16:35 ?42次下載

    舵機調試工具

    舵機調試工具、直流電機的速度控制+測試程序。
    發表于 02-23 16:08 ?0次下載

    舵機調試工具

    飛思卡爾智能車舵機調試工具,其他舵機調試可自行修改舵機參數處理
    發表于 02-24 17:25 ?8次下載

    常用網絡調試工具

    [4]常用網絡調試工具_v1.0rc
    發表于 12-27 16:26 ?0次下載

    串口調試工具

    串口調試工具
    發表于 12-28 10:16 ?176次下載

    介紹Lauterbach調試工具的應用

    該演示由Lauterbach中國團隊提供,展現您如何通過Lauterbach強大的嵌入式調試工具Trace32來調試和分析運行在Altera Cyclone V SoC芯片上面的軟件。Lauterbach調試工具支持幾乎所有操作
    的頭像 發表于 06-26 08:09 ?5677次閱讀

    串口調試工具

    串口調試工具免費下載。
    發表于 09-13 17:41 ?34次下載

    分享Perl和Python腳本輕量實用的調試工具

    Perl和Python作為目前芯片開發流程中最為流行的腳本語言,本文將分別介紹它們輕量且實用的調試工具(Debugger),讓你在調試腳本的時候不再抓瞎。
    的頭像 發表于 01-21 17:25 ?2003次閱讀
    分享Perl和<b class='flag-5'>Python</b>腳本輕量實用的<b class='flag-5'>調試工具</b>

    調試工具檢測

    調試工具檢測
    發表于 01-31 15:01 ?0次下載

    Birdseye:極其強大的Python調試工具

    Birdseye是一個Python調試器,它在函數調用中記錄表達式的值,并讓你在函數** 退出 **后輕松查看它們,例如: 無論你如何運行或編輯代碼,都可以使用Birdseye。只需要
    的頭像 發表于 10-21 10:47 ?518次閱讀
    <b class='flag-5'>Birdseye</b>:極其強大的<b class='flag-5'>Python</b><b class='flag-5'>調試工具</b>

    modbus調試工具

    modbus調試工具
    發表于 04-28 13:50 ?90次下載

    串口調試工具

    串口調試工具
    發表于 04-28 13:53 ?7次下載

    Birdseye:極其強大的Python調試工具

    Birdseye是一個Python調試器,它在函數調用中記錄表達式的值,并讓你在函數** 退出 **后輕松查看它們,例如: 無論你如何運行或編輯代碼,都可以使用Birdseye。只需要
    的頭像 發表于 11-01 09:50 ?434次閱讀
    <b class='flag-5'>Birdseye</b>:極其強大的<b class='flag-5'>Python</b><b class='flag-5'>調試工具</b>
    娱乐博彩| 苗栗县| 隆尧县| 百家乐官网平台有什么优惠 | 百家乐官网透视牌靴哪里有| 阳泉市| 百家乐官网官网网址| 定制百家乐桌垫| 大发888坑人么| 百家乐官网有破解的吗| 蓝盾百家乐官网洗码| 百家乐好赌吗| 六合彩130| 百家乐官网平六亿财富网| 百家乐群博爱彩| 葡京娱乐场官网| 温州市百家乐官网ktv招聘| 玩百家乐新太阳城| 真人轮盘| 金钱豹百家乐官网的玩法技巧和规则| 百家乐官网哪条下路好| 百家乐赌机厂家| 百乐门线上娱乐城| 太阳百家乐官网网| 大发888娱乐城外挂| 百家乐官网开过的路纸| 三亚百家乐的玩法技巧和规则| 苗栗市| 百家乐视频游戏视频| 赌博游戏平台| 正品百家乐官网的玩法技巧和规则 | 大发888最新版本下载| 在线百家乐官网游戏软件| 马尼拉百家乐的玩法技巧和规则| 百家乐官网实战技术| 百家乐微笑心法搜索| 仲巴县| 百家乐二游戏机| 页游| 百家乐技巧打| 百家乐官网平台租用|