在 Visual Studio Code 中執行 Python 程式碼

無論您是在 REPL 中測試小段 Python 程式碼,還是準備執行 Python 指令碼,Python 擴充功能都提供了多種執行程式碼的方式。

互動式執行 Python 程式碼

安裝在您機器上的 Python 解譯器為您提供了所謂的互動式 REPL(讀取-求值-輸出迴圈),它會讀取一段程式碼、進行求值,然後將結果輸出到主控台。

在您的機器上安裝 Python 解譯器後,您可以透過開啟系統的終端機或命令提示字元,並輸入 python(Windows)或 python3(macOS/Linux)來與 Python REPL 互動。當看到 >>> 提示字元時,即表示已啟用 Python REPL。

在 VS Code 中,還有另外兩種與 Python REPL 互動的方式。

原生 REPL (Native REPL)

VS Code 的 Python 原生 REPL 是在傳統 Python REPL 的基礎上構建的,並提供了額外的功能,例如 Intellisense 和語法突顯,以提高您的 Python 開發效率。不過,此 REPL 仍遵循 Python 內建 REPL 的原則,即歷史執行順序及其內容是不可變的。

您可以透過命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))搜尋 Python: Start Native REPL 來開啟原生 REPL。此外,您可以透過在 settings.json 檔案中設定 "python.REPL.sendToNativeREPL": true,利用智慧傳送 (Smart Send)(Shift+Enter)與在 Python REPL 中執行選取範圍/行將程式碼傳送到原生 REPL。您可以透過在 settings.json 中設定 "python.REPL.sendToNativeREPL": false,選擇繼續使用位於終端機中的 Python 內建 REPL ( >>> )。

Gif showing the Native REPL for Python.

終端機 REPL (Terminal REPL)

就像您可以在 VS Code 之外與 Python REPL 互動一樣,您也可以在 VS Code 內開啟終端機並啟用 Python REPL。若要執行此操作,您可以在命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))中搜尋 Python: Start Terminal REPL,這會為目前選取的 Python 解譯器開啟終端機。或者,您可以前往 終端機 (Terminal) > 新增終端機 (New Terminal) 並輸入 python(Windows)或 python3(macOS/Linux)指令。

透過終端機 Shell 整合 (Terminal Shell Integration),終端機支援多項功能,例如執行最近指令、指令裝飾器以及改進的無障礙存取。若要啟用或停用終端機中的 Shell 整合,您可以在設定中切換 python.terminal.shellIntegration.enabled 在 VS Code 中開啟 在 VS Code Insiders 中開啟

執行 Python 程式碼

Python 擴充功能提供了多種無需額外設定即可執行 Python 程式碼的方法。

  1. 選取編輯器右上角的執行 Python 檔案 (Run Python File in Terminal) 播放按鈕。

    Using the Run Python File in Terminal button

    該按鈕會開啟一個終端機面板,其中會自動啟動您的 Python 解譯器,然後執行指定的指令碼(例如:python3 hello.py (macOS/Linux) 或 python hello.py (Windows))。

    Program output in a Python terminal

  2. 在編輯器視窗的任何位置按一下右鍵,然後選擇 執行 (Run) > 在終端機中執行 Python 檔案 (Run Python File in Terminal)(此操作會自動儲存檔案)。

    Run Python File in Terminal command in the Python editor

  3. 選取一行或多行程式碼,然後按下 Shift+Enter,或按一下右鍵並選擇 在 Python 終端機中執行選取範圍/行 (Run Selection/Line in Python Terminal)

    此選項適合用於測試檔案中的一部分程式碼。

  4. 將游標置於某一行程式碼上,並按下 Shift+Enter 以啟動智慧傳送 (Smart Send)。

智慧傳送 (Smart Send)

Python 擴充功能預設啟用智慧傳送 (Shift+Enter)。智慧傳送會檢視游標所在位置的程式碼,將最小的可執行程式碼區塊傳送到 Python REPL,然後將您的游標移動到下一行程式碼。這使您能夠輕鬆且有效率地執行程式中的 Python 程式碼。

智慧傳送不適用於不支援的 Python 版本(例如 Python 2)或無效的 Python 程式碼。若要停用智慧傳送,改為僅傳送游標所在行的程式碼,請將 python.REPL.enableREPLSmartSend 設定為 false

參見

  • 偵錯 - 學習如何在本地與遠端對 Python 程式進行偵錯。
  • 測試 - 設定測試環境,並探索、執行與偵錯測試。
© . This site is unofficial and not affiliated with Microsoft.