亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

首頁 慕課教程 PyCharm 編輯器教程 PyCharm 編輯器教程 調試 Python 代碼過程中經常用到的工具

調試 Python 代碼過程中經常用到的工具

上一節我們學習了在 PyCharm 里調試 Python 程序要用到的一些基本功能,本節將介紹一些在調試過程中可能要用到的工具。包括 Watches pane、evaluate expression 以及 debug console。

1. 使用監視面板(Watches pane?)

如果要計算多個變量或表達式,并同時查看所有變量或表達式,可以為它們創建監視。表達式的值會隨著應用程序的每個步驟進行更新,但僅在應用程序掛起時才可見。

我們先創建一個新的 Python 文件 sort.py,然后添加下面冒泡排序的代碼,然后通過監視面板查看變量與列表的變化。

def bubble_sort(arr):
    n = len(arr)

    # 遍歷所有數組元素
    for i in range(n):

        # Last i elements are already in place
        for j in range(0, n - i - 1):

            if arr[j] > arr[j + 1]:  
                arr[j], arr[j + 1] = arr[j + 1], arr[j]


arr = [64, 34, 25, 12, 22, 11, 90]

bubble_sort(arr)

默認情況下,“Watches pane"處于隱藏狀態,顯示在"Variable” 中。debug 上面程序, 顯示 Debug 工具窗口后, 點擊"show watches"切換按鈕, 面板就會顯示在右側。

圖片描述
PyCharm 提供了多種添加監視的方法

  • 在 Watches Pane 中,單擊 + 按鈕;
  • 在 Variables 中選擇一個或多個項目,并將其拖動到 Watches Pane;
  • 右鍵單擊編輯器中的項目,然后選擇"Add to Watches";
  • 在 Variables 中, 右鍵單擊所需項目并選擇"Add to Watches"。

圖片描述

Tips: 通過工具欄中的 - 按鈕, 可以隨時移除所填加的監視。

另外, PyCharm 提供了單獨的窗口檢查(inspect)變量與監視,例如,需要檢查多個引用,可以為中每個引用打開一個檢查窗口。 在 Debug 工具窗口的 Variable 或 Watches 窗口選擇要 Inspect 的項目, 右鍵從上下文菜單中,選擇 inspect。
圖片描述

2. 計算表達式(Evaluating Expressions)

使用 PyCharm,不僅可以查看獨立變量的值,還可以計算更復雜的表達式,如方法調用、運算符表達式、lambda 表達式類。

1. 計算表達式的最簡單方法是使用編輯器工具提示。主菜單 PyCharm/File -> Preference/Settings -> Build, Execution, Deployment -> Debugger -> Data Views

圖片描述

鼠標懸停在變量處,就可以顯示對應的值:

圖片描述

如果變量或表達式的值包含子元素,單擊 + 按鈕將展開節點并顯示所有子元素:

圖片描述

2. 使用專用的對話框計算評估表達式。

Evaluate 對話框允許在當前上下文中使用變量和表達式 - 可以對它們執行各種操作和調用方法,然后使用其當前值獲得的結果。

以下面為例, 在 Evaluate 對話框 里輸入一個新的表達式,然后變量的當前值被代入表達式,點擊 Evaluate 按鈕或者回車 , 表達式結果返回。

圖片描述

Tips: 可以將焦點切換回編輯器以復制其他變量和表達式,如有必要,還可以打開多個 Evaluate 對話框。

PyCharm 也提供了多種方式打開 Evaluate 對話框

  • 按?F8 (Alt + F8);
  • 從上下文菜單中選擇Evaluate Expression…;
  • 從主菜單中選擇Run -> Debug Actions -> Evaluate Expression...
  • 單擊 Debug 窗口工具欄上的 Evaluate Expression… 按鈕。

圖片描述

Tips: 如果選擇了某項內容,則變量或表達式將顯示在"表達式"字段中。否則,在字段中鍵入表達式,或從列表中選擇以前計算的表達式之一。

3. 使用調試控制臺(debug console)

調試控制臺使能夠查看輸出和錯誤消息。啟動調試會話時,PyCharm 將啟動調試控制臺。控制臺是交互式的:可以在其中鍵入命令、執行命令和查看結果。

圖片描述

Tips: 在控制臺中可以直接調用程序中定義的變量與方法執行各種操作,幫助做更多的調試。

4. 小結

本節介紹了幾個調試中可能用到了工具,因為上面例子都比較簡單,只為了說明具體功能,大家可能不能深入體會到這些功能好處。其實這些工具在比較復雜項目中調試中還是比較常用的,因為在項目中定義了很多變量與方法,有些方法或者變量又被引用了多次,這時把關注的對象放在Watches Pane 里隨時監控與檢查,通過設置,在編輯器內隨時查看表達式或者變量的值,這對于調試程序都是非常有幫助的,大家可以在以后工作學習實踐中逐漸體會理解。
圖片描述