AD

2021-04-08

[Windows] Python 2 和 3 的虛擬環境設定

為什麼要使用虛擬環境

在開發時可能會遇到「A 專案的 p 套件要用1.2版本」但「B 專案的 p 套件要用2.2版本」或是遇到「C 專案只需要 a, b, c 套件」而「D 專案只需要 b, d 套件」,這時若是使用虛擬環境開發就能讓開發環境維持乾淨的狀態。


虛擬環境的原理

python venv 會複製基本的 python 執行檔及套件等到虛擬環境的 Lib\site-packages 資料夾下,使用虛擬環境時就是使用資料夾中的那份 python。


建立虛擬環境

python3 內建就有 venv 這個參數能用來建立虛擬環境,執行:
python venv venvname
venvname 是虛擬環境的名稱。
 
Python2 要建立虛擬環境則需要用 pip 安裝 virtualenv 套件:
pip install virtualenv
安裝後執行:
python virtualenv venvname
venvname 一樣是虛擬環境的名稱。


同時有 python 2 和 python 3

如果 windows 上遇到錯誤 "Error: [WinError 2] 系統找不到指定的檔案",可能是因為同時有 python 2 和 python 3 導致。
先找出 python(2) 和 python3 的路徑:
where python
where python3
可以將 python 命名為 python2,python3 命名為 python(或其他自己可以區分2或3的命名)。
現在可以建立 python3 的虛擬環境:
python venv venvname
Python2 的安裝 virtualenv 套件:
python2 -m pip install virtualenv
-m 的參數代表使用這個 python 下的套件。當 py2 和 py3 同時存在相同名稱的套件時(比方pip),可以用 -m 來指定版本。
python2 virtualenv venvname


使用虛擬環境

執行:
venvname\Scripts\activate

當命令提示字元前面帶有虛擬環境的名稱時,就表示在虛擬環境中:
(venvname) C:\Users\uname>

離開虛擬環境: deactivate

沒有留言:

張貼留言

如果文章有幫助到你可以在 LikeCoin 上幫我拍手喔