日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Vscode,pudb远程调试服务器中的程序

發布時間:2024/1/18 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vscode,pudb远程调试服务器中的程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Vscode遠程調試服務器中的程序

VScode可以遠程調試服務器中的代碼,應該適合更多的人。
請參考:成功解決 vscode遠程調試python
請注意第三步的時候,如果你的端口號不是默認22,就需要重新設置,點擊下圖的齒輪,出現config文件。

然后增添Port <你的端口號> 就好了。Host 可以改成你的服務器的名字。

還有重要的一點上面的鏈接沒有指出來,就是第五步之后要進行代碼調試的話,需要按照下圖設置:

也可參考:VS Code進行Python遠程調試
自己遇到的問題:

  • 連上了服務器,也打開了服務器中的文件,但是不能加斷點,就是點代碼前面不會出現紅點。這是因為python擴展沒有安裝好,在擴展中搜索python,然后安裝,稍微久一點。
  • python沒有辦法利用ctrl+左鍵跳轉,安裝擴展Pylance,進入設置(左下角小齒輪),python:language server改成pylance就可以了,如果不行可以重啟試試。
  • 調試的時候總是報錯:time out waiting for launcher,參考這里把console改為internalConsole,默認的是integratedTerminal,而且網上很多的博客都是設定的默認,目前不知道為什么,但是改了確實好了。
  • 如果要用到ptvsd,注意launch.json的host后的ip地址要帶上雙引號。
  • pudb遠程調試服務器中的程序

    目錄

    • Vscode遠程調試服務器中的程序
    • pudb遠程調試服務器中的程序
    • 前言
    • 一、pudb能干什么?
      • 1. 優點
      • 2. 缺點
    • 二、建議什么樣的人使用pudb?
    • 三、具體使用方法
      • 1.安裝與使用
      • 2. 偏好調整
      • 3. 調試中會用到的操作
      • 4. 可能遇到的問題
    • 總結
      • 參考鏈接


    前言

    最近在寫代碼,但是對于剛入門不久的編程小白,服務器上的代碼不能調試真是太痛苦了。之前用過pycharm調試,但是因為要設置環境,mapping什么的,運行代碼一多,環境比較多的時候,總是出問題,而且tensorflow出問題更多。幸好在大佬的指點下,我知道了pudb能遠程調試,而且它本身不需要下額外的軟件,只需要pip裝一個包就好,然后你就有一個類似于matlab的調試界面了。

    一、pudb能干什么?

    pudb是全屏的基于控制臺的可視化調試器。

    • 可設置斷點,解決了服務器難以調試的問題,和pycharm的本地調試斷點一樣。
    • 基于鍵盤,簡單高效。為什么說高效呢?因為它支持VI的鼠標移動。
    • 支持查找源代碼,可以使用m代用module browser查看載入的模塊。
    • 可以進入調用模塊的源代碼,適用于一些框架比較大,結構比較復雜的代碼。

    1. 優點

    • 不會遇到mapping之類的問題,只要相應的環境配置好,就可以調試,比較穩定
    • 界面簡單,滿足日常調試需求

    2. 缺點

    • 全程用鍵盤操作,一開始會有點不太適應
    • 不能用鼠標,不能使用類似于Ctrl+左鍵的模塊的索引方式
    • 不能直接編輯代碼,可以配合pycharm之類的工具編輯代碼。所以兩個屏更方便。

    二、建議什么樣的人使用pudb?

    • 需要用服務器調試代碼
    • python入門者

    三、具體使用方法

    準備工作:使用pycharm把環境映射好,也就是setting里面設置好。并且點上自動upload的選項。這樣pycahrm里改完之后,服務器更新了,Xshell這邊重新開啟調試也會修改。

    1.安裝與使用

    安裝:pip install pudb
    使用:python -m pudb.run main.py
    或者 pudb main.py(這個我用了會有問題)

    2. 偏好調整

    第一次使用的界面是這樣的:

    嗯。。。看過都說丑的界面。先把它換成我們熟悉的配色:點擊ctrl+p,然后光標往下移,看到Theme,然后把光標移到midnight,點enter。就換成我們熟悉的配色。再加上頁碼,在General部分,光標移到show line numbers, 點enter。



    配色換好之后我們再來看組成,由五個部分組成,代碼,命令行,變量模塊,運行模塊,以及斷點模塊。對于日常調試這些就夠了,剩下的使用鍵盤操作就可以,鼠標在這里就沒有什么作用啦。

    3. 調試中會用到的操作

    • 更換光標所在模塊:利用鍵盤的上下左右鍵轉換光標所在的模塊,從【代碼】-【命令行】使用ctrl+x進行更換。或者大寫模式下,按:V - 移到變量部分,S - 移到運行模塊部分, B - 移到斷點部分, C - 移到代碼部分;

    • 設置和刪除斷點:將光標放到所在行,按b,注意是小寫;再按一次b就刪除斷點了

    • 編輯斷點:聚焦到斷點部分,光標放到要編輯的斷點處,按e

    • 運行到下一行:n

    • 運行到下一個斷點處:t

    • 進入調用的模塊的源代碼:s

    • 運行完當前函數并跳出:r/f

    • 查看變量:聚焦到變量部分,想看哪個變量,enter就行

    • 進入終端:o

    • 跳出終端回到調試界面:enter

    • 終止代碼:q

    • 翻頁:pagedown 和 pageup,或Ctrl+u/d

    • 跳轉到首行/末行 g/G - start/end

    • 跳到指定行 L

    • 查找:/ ,之后按下進入代碼部分,,/.分別進行上一個/下一個查找

    • 窗口分布調整:shift + -/+

    這些就是我最近使用pudb調試經常使用的操作。如果你有其他的需要,按shift+?就可以看到所有的指令。下面是其他博主翻譯的,可以作為參考:

    Welcome to PuDB, the Python Urwid debugger. ------------------------------------------- (This help screen is scrollable. Hit Page Down to see more.) Keys: # 快捷鍵相關Ctrl-p - edit preferences # 編輯配置n - step over ("next") # 運行到下一行 s - step into # 運行進函數c - continue # 繼續運行r/f - finish current function # 結束當前函數t - run to cursor # 運行到光標處e - show traceback [post-mortem or in exception state] # 顯示tracebackH - move to current line (bottom of stack) # 移動到當前行(棧底)u - move up one stack frame # 移動到棧的上一行d - move down one stack frame # 移動到棧的下一行o - show console/output screen # 顯示命令行屏幕(回車返回pudb)b - toggle breakpoint # 打斷點/取消斷點m - open module # 打開python模塊j/k - up/down # 上/下Ctrl-u/d - page up/down # 上一頁/下一頁h/l - scroll left/right # 左滾動/右滾動g/G - start/end # 跳轉到首行/末行L - show (file/line) location / go to line # 跳到指定行/ - search # 查找,/. - search next/previous # 查找下一個/上一個V - focus variables # 聚焦在變量窗口S - focus stack # 聚焦在棧窗口B - focus breakpoint list # 聚焦在斷點列表窗口C - focus code # 聚焦在代碼窗口f1/?/H - show this help screen # 顯示幫助窗口q - quit # 退出Ctrl-c - when in continue mode, break back to PuDB # 當處于連續模式時,返回pudbCtrl-l - redraw screen # 重繪窗口Command line-related: # 命令行相關! - invoke configured python command line in current environment # 進入命令行窗口Ctrl-x - toggle inline command line focus # 切換命令行窗口和代碼窗口+/- - grow/shrink inline command line (active in command line history) # 增長/縮減命令行(命令行歷史下激活)_/= - minimize/maximize inline command line (active in command line history)# 最小化/最大化命令行(命令行歷史下激活)Ctrl-v - insert newline # 插入新行Ctrl-n/p - browse command line history # 瀏覽命令行歷史Tab - yes, there is (simple) tab completion # 快速補齊Sidebar-related (active in sidebar): # 工具欄相關(工具欄激活時有效)+/- - grow/shrink sidebar # 擴大/縮減工具欄(指的是工具欄寬度)_/= - minimize/maximize sidebar # 最小化/最大化工具欄[/] - grow/shrink relative size of active sidebar box # 擴大/縮減激活工具欄相對大小(指的是窗口高度)Keys in variables list: # 變量列表窗口的快捷鍵\ - expand/collapse # 展開/收縮t/r/s/c - show type/repr/str/custom for this variable # 切換type/repr/str/customh - toggle highlighting # 切換高亮@ - toggle repetition at top # 切換頂部重復* - cycle attribute visibility: public/_private/__dunder__ # 屬性的循環可視化m - toggle method visibility # 切換方法的可見性w - toggle line wrapping # 切換換行n/insert - add new watch expression # 添加新的watch表達式enter - edit options (also to delete) # 編輯選項Keys in stack list: # 棧列表窗口的快捷鍵enter - jump to frame # 跳到某幀Keys in breakpoints view: # 斷點列表窗口的快捷鍵enter - edit breakpoint # 編輯斷點d - delete breakpoint # 刪除斷點e - enable/disable breakpoint # 啟用/禁用斷點

    4. 可能遇到的問題

    • q->restart之后代碼看起來更新了,但是有可能實際沒有更新。這時候需要q->quit才管用,不然沒有更新。這個問題我遇到了很多次。

    總結

    本文介紹了如何使用pudb對服務器中的代碼進行調試。它的優點在于穩定性和界面簡潔,所以推薦大家使用。

    參考鏈接

    pudb使用指南
    [筆記]Python的調試器pudb簡易教程

    xshell+xftp破解版下載安裝以及使用教程

    總結

    以上是生活随笔為你收集整理的Vscode,pudb远程调试服务器中的程序的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。