Python 虛擬環境的建立 — 以 vscode 使用情境為例

Jeremy Pai
Life’s a Struggle
Apr 26, 2024
Photo by Randy Fath on Unsplash

建立虛擬環境好處多多,需要什麼 Package 就安裝什麼,也能透過虛擬環境統一團隊的開發環境,而且不需要擔心搞壞自己電腦的環境。如果虛擬環境壞了就 … 重新建立一個就行~

過去我一直是 Anaconda 的使用者,原因很簡單就是容易使用而且能一次把常用的 package 一起安裝不用自己手動一個一個裝,缺點就是 Anaconda 比較肥,東西很多。後來進了業界發現滿多人直接用原生 Python 建立虛擬環境,成為一個學習契機 🙂

前言說明完畢,接下來我們使用原生 Python 建立虛擬環境。

建立虛擬環境並命名

python -m venv virtual_name

很簡單吧,只要一行就搞定了。指令中的 virtual_name 可替換成自己想命名的虛擬環境名稱,不過一般會直接命名為 .venv。

python -m venv .venv

Python 版本預設是會帶入現在環境中的版本,如果電腦中有多個版本的 Python 就會需要指定 Python 版本去建立。

啟動虛擬環境 (vscode 要記得安裝 Python extension)

接著打開 vscode,輸入 CTRL+SHIFT+P,在 command palette 輸入 Python: Select Interpreter。

點開後就能看到底下結果,選擇剛剛建立的虛擬環境 (我這邊有兩個虛擬環境,分別是 .venv、temp1)。 以上動作如果是以指令執行是輸入 .\virtual_name\Scripts\activate。

最後再一次 CTRL+SHIFT+P,輸入 Python: Create Terminal。

就可以在剛剛建立的虛擬環境操作了,例如安裝 Package 以及編譯程式碼。

停止虛擬環境

deactivate

這樣就可以停用虛擬環境。

以上就是很簡單的順一次建立虛擬環境的流程,現在就可以開始安心開發啦

about_Execution_Policies 問題

如果是第一次使用的話,可能會碰到跟我一樣的問題,如下所示:

這是因為微軟針對 PowerShell (vscode 的 terminal 在 windows 就是 PowerShell) 有一些執行原則,講簡單點就是保護我們電腦不受到惡意腳本的侵害。但是不幸的也把我們虛擬環境的操作擋住了… (有興趣了解的人請參考 about_Execution_Policies)

這時請先以系統管理員的身分打開 PowerShell,並輸入 get-executionpolicy 就會發現現在是處於 Restricted 的狀態。

輸入 set-executionpolicy RemoteSigned,並且選擇 A 就能夠覆寫初始設定

再次打開 vscode,鍵盤輸入 CTRL+SHIFT+P,在 command palette 輸入 Python: Create Terminal,現在就可以在剛剛建立的虛擬環境操作了~

--

--

Jeremy Pai
Life’s a Struggle

機器視覺演算法工程師~不限主題隨心寫下自己想寫的事物