Posted on

為每個python專案建立獨立的虛擬環境

甚麼是虛擬環境

虛擬環境 (virtual environment) 是一個隔離的 Python 環境,可以讓您在同一台電腦上安裝不同版本的 Python 套件,或是不同專案之間使用不同的套件版本。

使用虛擬環境可以幫助您避免不同專案之間因為套件版本不同而造成的衝突。例如,如果您有兩個專案,一個專案需要使用舊版本的套件,而另一個專案需要使用新版本的套件,您可以在兩個專案中分別建立兩個虛擬環境,並在每個虛擬環境中安裝所需的套件版本。這樣就可以避免在不同專案中使用不同版本的套件造成的衝突。

虛擬環境還可以讓您在不影響全域環境的情況下,安裝、卸載或更新套件。這對於在測試某些套件時特別有用,因為您可以在虛擬環境中安裝或卸載套件,而不用擔心會對全域環境造成影響。

總的來說,虛擬環境可以讓您更輕鬆地在同一台電腦上進行多個 Python 專案的開發,並且可以有效地隔離不同專案之間的套件版本。

於Windows建立虛擬環境

要建立新的虛擬環境,請選擇 Python 解譯器,並建立用來存放的 .\venv 目錄:

python -m venv --system-site-packages .\venv

啟動虛擬環境:

.\venv\Scripts\activate

在不影響主機系統設定的情況下,在虛擬環境中安裝套件。首先,請升級 pip:

pip install --upgrade pip

pip list  # show packages installed within the virtual environment

之後再離開虛擬環境:

deactivate 

於macOS建立虛擬環境

要建立新的虛擬環境,請選擇 Python 解譯器,並建立用來存放的 ./venv 目錄:

python3 -m venv --system-site-packages ./venv

使用殼層特定的指令啟動虛擬環境:

source ./venv/bin/activate  # sh, bash, or zsh
. ./venv/bin/activate.fish  # fish
source ./venv/bin/activate.csh  # csh or tcsh

虛擬環境啟用時,你的殼層提示會包含 (venv) 前置字元。

在不影響主機系統設定的情況下,在虛擬環境中安裝套件。首先,請升級 pip:

pip install --upgrade pip

pip list  # show packages installed within the virtual environment

之後再離開虛擬環境:

deactivate

啟動虛擬環境

可使使用下列指令啟動已建立好的虛擬環境

source ./env/bin/activate

為你的專案設定使用函式庫的列表

匯出現在專案所使用的函式庫

python -m pip freeze > requirements.txt

安裝函式庫列表

python -m pip install -r requirements.txt