Windows 上 Visual Studio 中的 Python 支援

Python 是一種熱門的程式設計語言,其可靠、彈性、易於學習、可在所有操作系統上使用,並由強大的開發人員社群和許多免費連結庫支援。 Python 支援各種開發方式,包括 Web 應用程式、Web 服務、傳統型應用程式、腳本和科學運算。 科學家、業餘開發人員、專業開發人員和許多大學都使用 Python 進行程式設計。 您可以從 python.org (英文)適用於初學者的 Python (英文) 深入了解此語言。

Visual Studio 是 Windows 上功能強大的 Python IDE。 Visual Studio 可透過「Python 開發與資料科學」 工作負載 (Visual Studio 2017 和更新的版本) 和免費的「適用於 Visual Studio 的 Python 工具」延伸模組 (Visual Studio 2015 和更舊的版本),針對 Python 語言提供開放原始碼支援。 流覽 Visual Studio IDE,熟悉撰寫和編輯 Python 程式代碼的 IDE 功能。

Visual Studio Code 可在 Mac 和 Linux 上使用。 如需詳細資訊,請參閱問與答

開始進行之前:

支援多重解譯器

Visual Studio 的 [Python 環境] 視窗可讓您單一位置來管理所有全域 Python 環境、conda 環境和虛擬環境。 Visual Studio 會自動偵測標準位置中的 Python 安裝,並允許您設定自訂安裝。 針對每個環境,您可以輕鬆管理套件、開啟該環境的互動式視窗,以及存取環境資料夾。

Screenshot that shows the expanded view of the Python Environments window in Visual Studio 2019.

Screenshot that shows the expanded view of the Python Environments window in Visual Studio 2022.

使用 [開啟互動式視窗] 在 Visual Studio 的內容中命令以互動方式執行 Python。 使用 [在 PowerShell 中開啟] 命令,在所選環境的資料夾中開啟另外的命令視窗。 在該命令視窗中,您可以執行任何 Python 腳本。

如需詳細資訊,請參閱:

豐富的編輯功能、IntelliSense 及程式碼理解

Visual Studio 提供最優質的 Python 編輯器,包括語法色彩標示、所有程式碼和程式庫的自動完成、程式碼格式設定、簽章說明、重構、Lint 處理和輸入提示。 Visual Studio 也提供獨一無二的功能,例如類別檢視、「移至定義」、「尋找所有參考」與程式碼片段。 直接與 互動式視窗 整合可協助您快速在檔案中開發現有的 Python 程式代碼。

Screenshot that shows code completions for Python code in Visual Studio.

如需詳細資訊,請參閱:

互動式視窗

針對 Visual Studio 已知的每個 Python 環境,您可以直接從 Visual Studio 內輕鬆開啟相同的 Python 解譯器互動式 (REPL) 環境,而無須使用個別的命令提示字元。 您也可以在環境之間輕鬆切換。 若要開啟個別的命令提示字元,請在 [Python 環境] 視窗中選取所需的環境,然後選取 [在 PowerShell 中開啟] 命令,如先前 支援多個解釋器 一節所述。

Screenshot that shows the expanded view of the Python interactive window in Visual Studio 2019.

Screenshot that shows the expanded view of the Python interactive window in Visual Studio 2022.

Visual Studio 也提供 Python 程式碼編輯器與互動式視窗之間的緊密整合。 Ctrl+Enter 鍵盤快速鍵可方便您將編輯器中目前的程式碼行 (或程式碼區塊) 傳送至互動式視窗,然後移至下一行 (或區塊)。 Ctrl+Enter 可讓您輕鬆逐步執行程式碼,而不需要執行偵錯工具。 您也可以使用相同的按鍵將選取的程式碼傳送到互動式視窗,以及輕鬆地將程式碼從互動式視窗貼到編輯器中。 這些功能一起搭配可讓您在互動式視窗中發展出某個程式碼區段的詳細資料,然後在編輯器中輕鬆地將結果儲存在檔案中。

Visual Studio 也支援 REPL 中 IPython/Jupyter,包括內嵌繪圖、.NET 與 Windows Presentation Foundation (WPF)。

如需詳細資訊,請參閱:

專案系統以及專案和項目範本

Visual Studio 可協助您管理專案隨時間發展衍生出的複雜性。 Visual Studio 專案 不僅僅是資料夾結構。 項目有助於瞭解不同檔案的使用方式,以及它們彼此的關係。 Visual Studio 可協助您區別應用程式程式碼、測試程式碼、網頁、JavaScript、建置指令碼等,這些會接著啟用檔案適當的功能。 Visual Studio 解決方案 可協助您管理多個相關專案,例如 Python 專案和 C++ 延伸模組專案。

注意

在 Visual Studio 2019 和更新版本中,您可以開啟包含 Python 程式代碼的資料夾,並在不建立 Visual Studio 專案或方案檔的情況下執行該程式代碼。 如需詳細資訊,請參閱快速入門:在資料夾中開啟並執行 Python 程式碼。 請記住,使用項目檔有好處,如本節所述。

下圖顯示 Visual Studio 解決方案的範例,其中包含 方案總管 中的 Python 和 Flask 專案。

Screenshot that shows a Visual Studio solution containing both Python and Flask projects in Solution Explorer.

專案和專案範本會自動設定不同類型的專案和檔案的程式。 範本可節省寶貴的時間,並讓您不必管理複雜且容易出錯的詳細數據。 Visual Studio 提供 Web、Azure、數據科學、控制台和其他專案類型的範本。 您可以找到 Python 類別、單元測試、Azure Web 設定、HTML,甚至是 Django 應用程式等檔案的範本。

Screenshot of python project and item templates in Visual Studio

如需詳細資訊,請參閱:

Visual Studio 的其中一個優點是功能強大的偵錯工具。 特別是針對 Python,Visual Studio 包括可進行 Python/C++ 混合模式偵錯、對 Linux 進行遠端偵錯、在 [互動式] 視窗內進行偵錯,以及對 Python 單元測試進行偵錯。

Screenshot of the Visual Studio debugger for Python showing an exception popup dialog.

在 Visual Studio 2019 和更新版本中,您可以執行和偵錯程式代碼,而不需要 Visual Studio 項目檔。 如需範例,請參閱 快速入門:在資料夾中 開啟並執行 Python 程式代碼。

如需詳細資訊,請參閱:

具備完整報告功能的分析工具

分析功能會探索您應用程式中的時間使用情況。 Visual Studio 支援使用 CPython 型解譯器來進行分析,並且包含了可比較不同分析執行回合之間效能的功能。

Screenshot that shows the Visual Studio profiler results for a Python project.

如需詳細資訊,請參閱:

單元測試工具

在 Visual Studio [測試總管] 中探索、執行及管理測試,並輕鬆針對單元測試進行偵錯。

Screenshot that shows debugging output for a Python unit test in Visual Studio.

如需詳細資訊,請參閱:

Azure SDK for Python

適用於 Python 的 Azure 程式庫能簡化從 Windows、macOS X 及 Linux 應用程式使用 Azure 服務的程序。 您可以用它們來建立及管理 Azure 資源,以及連線至 Azure 服務。

如需詳細資訊,請參閱 Azure SDK for Python適用於 Python 的 Azure 程式庫

問題和回答

問: Visual Studio for Mac 提供 Python 支援嗎?

A. 目前不支援 Visual Studio for Mac。 如需詳細資訊,請參閱 Visual Studio for Mac 發生什麼事? Windows、Mac 和 Linux 上的 Visual Studio Code 可透過可用的延伸模組與 Python 搭配運作。

問: 建置 UI 時,我可以使用什麼功能來搭配 Python?

A. 本領域的主要供應專案是 Qt 專案 ,其系結適用於稱為 PySide 的 Python(官方系結) (另請參閱 PySide 下載)和 PyQt。 Visual Studio 中的 Python 支援不包含任何特定的 UI 開發工具。

問: Python 專案是否能產生獨立的可執行檔?

A. Python 通常是解譯的語言,其中程式代碼會在適當的 Python 支援環境中視需要執行,例如 Visual Studio 和網頁伺服器。 Visual Studio 目前不提供建立獨立可執行檔的方法,這基本上表示具有內嵌 Python 解釋器的程式。 不過,Python 社群提供不同的方法來建立可執行檔,如 StackOverflow 中所述。 CPython 也支援在原生的應用程式中內嵌,如使用 CPython 的可內嵌 Zip 檔案部落格文章中所述。