Pycharm Debug詳解
看這個工具欄就是 PyCharm 調試器的“步進/斷點”按鈕區。常用按鈕和作用(從左到右一般是這些):
- Resume / 繼續運行(F9):從當前斷點繼續跑,直到下一個斷點或程序結束。
- Step Over / 單步跳過(F8):執行當前行,不“鉆進”函數體;適合快速看整體流程。
- Step Into / 單步進入(F7):如果這一行在調用函數/方法,就進入到被調函數里逐行看。
- Smart/Force Step Into(Shift+F7 / Alt+Shift+F7):這一行有多個調用時,彈出可選目標,只進入你選的那個(或強制進入庫函數)。
- Step Out / 跳出(Shift+F8):當前已在某個函數內部,直接把這個函數剩余部分一次跑完并回到上一層調用處。
- Run to Cursor / 運行至光標(Alt+F9):把鼠標光標放到某行,點擊后直接跑到那一行并停下(臨時斷點)。
- Evaluate Expression / 計算表達式(Alt+F8):彈出窗口可臨時執行/查看
tensor.shape
、x.mean().item()
、loss.isnan()
等。 - Mute Breakpoints / 靜音斷點:暫時忽略所有斷點(圖標像小紅點帶斜杠),再次點擊恢復。
- View Breakpoints / 管理斷點(Ctrl+Shift+F8):統一查看、啟用/禁用、設置條件斷點。
- Show Execution Point / 顯示執行位置(Alt+F10):把編輯器跳回當前正在執行的那一行。
小貼士:
- 訓練“直接跑起來”是正常的——沒有命中斷點時,程序就會一直運行;隨時在想看的行點一下行號設置斷點(或按
Ctrl+F8
),再點 Resume 就會停到那里。 - 深度學習調試期常用組合:
Step Over (F8)
觀察流程 → 在forward
/loss
前打斷點 →Evaluate
看tensor.shape/device/dtype/統計量
→ 如需看內部細節再Step Into (F7)
。 - 想快速跳到某一行而不逐步:把光標放到目標行 → 用 Run to Cursor (Alt+F9)。