分享方式:


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 功能。

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

開始進行之前:

支援多重解譯器

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

顯示 Visual Studio 2019 中 [Python 環境] 視窗展開檢視的螢幕擷取畫面。

顯示 Visual Studio 2022 中 [Python 環境] 視窗展開檢視的螢幕擷取畫面。

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

如需詳細資訊,請參閱:

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

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

顯示 Visual Studio 中 Python 程式碼的程式碼完成建議螢幕擷取畫面。

如需詳細資訊,請參閱:

互動式視窗

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

顯示 Visual Studio 2019 中 Python 互動視窗的展開檢視螢幕擷取畫面。

顯示 Visual Studio 2022 中 Python 互動視窗的展開檢視螢幕擷取畫面。

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 程式碼。 請注意,如本節所述,使用專案檔案有其優點。

下圖顯示了在 [方案總管] 中包含 Python 和 Flask 專案的 Visual Studio 解決方案範例。

顯示在 [方案總管] 中包含 Python 和 Flask 專案的 Visual Studio 解決方案螢幕擷取畫面。

專案和項目範本會自動設定不同類型的專案和檔案。 這些範本能節省您寶貴的時間,並免去您管理複雜且容易出錯的細節。 Visual Studio 提供了用於網頁、Azure、資料科學、控制台及其他類型專案的範本。 您可以找到用於檔案的範本,如 Python 類別、單元測試、Azure Web 設定、HTML 以及甚至 Django 應用程式。

Visual Studio 中 Python 專案和項目範本的螢幕擷取畫面

如需詳細資訊,請參閱:

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

用於 Python 的 Visual Studio 偵錯器的螢幕擷取畫面,其中顯示例外狀況彈出對話方塊。

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

如需詳細資訊,請參閱:

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

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

顯示用於 Python 專案的 Visual Studio 分析工具結果的螢幕擷取畫面。

如需詳細資訊,請參閱:

單元測試工具

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

顯示 Visual Studio 中 Python 單元測試偵錯輸出的螢幕擷取畫面。

如需詳細資訊,請參閱:

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 專案 及 Python 的繫結,其稱為 PySide (正式繫結) (另請參閱 PySide downloads) (PySide 下載) 和 PyQt。 Visual Studio 中的 Python 支援不包含任何特定的 UI 開發工具。

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

A. 一般來說,Python 是解譯的語言,並包含可在適當 Python 支援環境 (例如 Visual Studio 和 Web 伺服器) 中視需要執行的程式碼。 目前,Visual Studio 不提供用來建立獨立可執行檔的工具,因為獨立可執行檔基本上表示內嵌 Python 解譯器的程式。 不過,Python 社群提供不同方式來建立可執行檔,如 StackOverflow 中所述。 CPython 也支援在原生的應用程式中內嵌,如使用 CPython 的可內嵌 Zip 檔案部落格文章中所述。