共用方式為


教學課程:在Visual Studio中使用互動式 REPL 視窗

本文提供教學課程系列中的步驟 3 在 Visual Studio 中使用 Python

Visual Studio 集成開發環境 (IDE) 提供各種視窗,可支援不同的開發工作。 教學課程中的步驟 1步驟 2 說明如何在程式碼編輯器中管理 [方案總管] 中的檔案,以及使用程式代碼編輯器中的檔案內容。 在步驟 3 中,您會使用適用於 Python 的 Visual Studio Interactive Window,以獲得豐富的 REPL(讀取-評估-打印-循環)體驗,大幅縮短一般的編輯-建置-除錯週期。

藉由在適用於 Python 的 互動式視窗 中工作,您可以取得 Python 命令行之 REPL 體驗的所有功能。 它也可讓您輕鬆地在 Visual Studio 編輯器中與原始程式檔交換程式代碼,否則命令行會很麻煩。

在教學課程的步驟 3 中,您將瞭解如何:

  • 存取適用於 Python 的互動式視窗並設定 Python 解釋器
  • 在視窗中輸入並執行程式碼,然後捲動命令歷程記錄
  • 從其他來源插入現有的程式代碼或程序代碼
  • 從互動式視窗複製程式代碼和程序輸出

先決條件

開啟 Python 的互動式視窗

請遵循下列步驟來開啟 Interactive Window,並開始使用程式代碼:

  1. 使用下列其中一種方法來開啟適用於 Python 的 Interactive Window

    • [方案總管]中,以滑鼠右鍵按下您的項目節點,然後選取 [開啟互動式視窗]
    • [方案總管]的 [Python 環境] 節點底下,以滑鼠右鍵按兩下專案的 Python 環境,然後選取 [開啟互動式視窗] 。 Python 環境的範例是 Python 3.11(64 位)。
    • 在工具列上,選取 [檢視]>[其他視窗>Python 互動式視窗],或使用鍵盤快捷鍵 Alt+I

    Visual Studio 會在編輯器視窗下開啟 Python 互動式視窗。 視窗具有標準 >>> 的 Python REPL 提示符:

    此螢幕快照顯示 Visual Studio 程式代碼編輯器下方開啟的 Python 互動式視窗。

  2. Interactive Window中,您可以使用 [環境] 下拉式清單來選取要使用的特定 Python 解釋器:

    顯示如何從 Visual Studio 中互動式視窗的 [環境] 下拉式清單中選取 Python 解釋器的螢幕快照。

  3. 您可以移動視窗與程式代碼編輯器之間的分隔符,讓 互動式視窗 更大:

    顯示如何移動分隔符以增加 Visual Studio 中互動式視窗大小的螢幕快照。

    提示

    您可以移動視窗與周圍視窗之間的分隔符,以調整 Visual Studio 中的任何視窗大小。 您也可以將視窗移出 Visual Studio 框架,並在框架內重新排列視窗。

  4. Interactive Window中,輸入語句,例如 print("Hello, Visual Studio"),以及類似 123/456的計算運算式。 Visual Studio 會顯示程式代碼的立即結果:

    此螢幕快照顯示互動式視窗如何顯示您在 Visual Studio 中輸入之程式代碼的立即結果。

  5. 接下來,輸入多行語句,例如下列範例所示的函式定義。

    當您輸入程式代碼時,互動式視窗 會顯示 Python 接續提示 (... ]。 不同於命令行 REPL 體驗,互動式視窗 會在您輸入程式代碼時提供自動縮排:

    顯示互動式視窗的螢幕快照,顯示 Visual Studio 中多行程式代碼語句的 Python 接續提示。

    若要在程式代碼中新增一行,請選取 [Shift+Enter]。

  6. 使用 向上 鍵或 向下 鍵,捲動您到目前為止輸入的命令清單。

    互動式視窗 提供您輸入之所有專案的完整歷程記錄,並改善多行歷程記錄專案的命令行 REPL 體驗。 您可以快速地將函式的完整定義重新叫用為單一單位,並變更函式名稱或調整其他語句。 這種方法比逐行重新建立函式更容易。

重複使用和修改現有的程序代碼

Visual Studio 提供不同的方式,在 Interactive Window中使用現有的 Python 程式代碼,例如複製和貼上,以及存取先前輸入的程式代碼,如先前所述。 另一種方法是從編輯器視窗將多行程式代碼傳送至互動式視窗 。 此功能可讓您維護原始程式檔中的程式碼,並輕鬆地將所選片段傳送至 Interactive Window。 然後,您可以在快速 REPL 環境中使用代碼段,而不必執行整個程式。

請完成下列步驟來嘗試這些功能:

  1. 在編輯器中開啟 Python 專案檔 (.py)。 (教學課程步驟 2 說明如何建立此檔案,其中預設檔名為 PythonApplication1.py。)

  2. 以下列程序代碼取代 檔案中的 for 循環語句:

    # Create a string with spaces proportional to a cosine of x in degrees
    def make_dot_string(x):
        return ' ' * int(20 * cos(radians(x)) + 20) + 'o'
    
  3. 以滑鼠右鍵按兩下檔案中的 import 語句,然後選取 [傳送至互動式 ] [或鍵盤快捷方式] Ctrl+E]。 針對 from 敘述重複此過程。

    此螢幕快照顯示如何將匯入和從語句的程式代碼傳送至 Visual Studio 中的互動式視窗。

    當您選取 [傳送至互動式 ] 命令 時,選取的代碼段會立即貼到 Interactive Window 並執行。 在此情況下,Visual Studio 會從 cos 連結庫以及 radians 連結庫匯入 mathsys 例程。

  4. 再次針對 make_dot_string 函式重複此程式。 請務必發送函式的兩行代碼。 傳送函式的完整程式代碼之後,請在 Interactive Window中輸入新行。

    由於此程式代碼會定義函式,因此您可以呼叫函式幾次來快速測試函式,如下列範例所示:

    顯示如何在 Visual Studio 中執行傳送至互動式視窗之函式程式碼測試的螢幕快照。

    提示

    您可以使用鍵盤快捷方式 Ctrl+Enter,在 Interactive Window中執行目前的程式代碼行。 執行程式代碼之後,游標會移至下一行。 選取 ,按住 Ctrl 並依次按+,再反覆輸入,即可更方便地逐步執行您的程式碼,這在 Python 命令列中是無法實現的。 您也可以使用此方法逐步執行程序代碼,而不需要執行調試程式,也不需要從頭開始啟動程式。

  5. 請再試一次這個流程,但這次從任何來源複製並貼上多行程式碼到 互動式視窗。 您可以使用下列代碼段:

    for i in range(360):
        s = make_dot_string(i)
        print(s)
    

    在 Python 命令行 REPL 體驗中很難執行多行貼上動作。 貼上程式代碼之後,互動式視窗 會執行程序代碼,就像直接在視窗中輸入一樣:

    顯示如何將多行程式代碼貼到 Visual Studio 中互動式視窗的螢幕快照。

    目前的程式代碼可運作,但輸出並不令人振奮。 for 迴圈中的不同步驟值可以顯示更多餘弦波。 for 循環的程式代碼可在 REPL 歷程記錄中作為單一單位使用。 您可以找出程式代碼,並進行任何您想要的變更,並再次測試函式。

  6. 使用 向上箭頭鍵 瀏覽你的命令歷史記錄,並在 for 迴圈代碼處停止。

  7. 使用 向左 鍵或 向右 鍵移至迴圈語句的程序 for 代碼。 當您到達行的開頭時,請選取左箭頭 ,移動到上一行的結尾。

  8. for 循環語句中,移至 range 定義,並將 語句變更為 range(0, 360, 12)

  9. 選取 ctrl+Enterfor 迴圈語句中的任何位置,以再次執行函式:

    顯示如何在 Visual Studio 的互動式視窗中編輯上一個語句的螢幕快照。

  10. 重複此程式以實驗不同的步驟設定,直到您找到您想要的值為止。 您還可以藉由延長範圍來讓波重複出現,例如,range(0, 1800, 12)

複製您的程式代碼和程序輸出

Visual Studio 可讓您複製您在 Interactive Window中撰寫的任何程式代碼,以及執行程式代碼的任何輸出。

請遵循下列步驟,將程式代碼從 Interactive Window 複製到編輯器:

  1. 在 [互動式視窗]中,選取您要複製的程序代碼。

  2. 以滑鼠右鍵按下選取的程式碼,然後選擇 [複製代碼],或使用鍵盤快捷方式 Ctrl+Shift+C

    此螢幕快照顯示 Visual Studio 中,互動式視窗對包含提示和輸出的選取範圍的複製程式碼命令。

  3. 複製的程式代碼貼上到編輯器中。 Visual Studio 的這項特殊功能會自動省略所有輸出,以及選取中任何的 >>>... 提示。

    當您貼到編輯器時,只會取得程式碼:

    for i in range(0, 1800, 12):
        s = make_dot_string(i)
        print(s)
    
  4. 若要複製 互動式視窗的確切內容,包括提示和任何程序輸出,請使用標準 Copy 命令。

在這些步驟中,您使用 互動式視窗的快速 REPL 環境 來找出 Python 程式代碼的詳細數據,並輕鬆地將程式代碼新增至專案的原始程式檔。 當您使用 ctrl Ctrl+F5Debug>Start 但不偵錯重新執行程式代碼時,您會看到您想要的確切結果。

下一步