虛擬環境
為什麼需要虛擬環境?
到目前為止,我們所有的第三方包安裝都是直接通過 pip install xx 的方式進行安裝,這樣安裝會將安裝包安裝到我的需系統 python 環境中,但是這樣有乙個問題,就是如果你現在用 django 1.10.x 寫了乙個**,然後你的領導跟你說,之前有乙個舊專案是用 django 0.9 開發的。讓你進行維護,但是 django 1.10 不再相容 django 0.9 的一些語法了。這時候就會碰到乙個問題,我們如何在我們的電腦中同時擁有 django 1.10 和 django 0.9 兩套環境?這個時候我們就可以通過虛擬環境來解決這個問題。
虛擬環境原理介紹:
虛擬環境相當於乙個抽屜,在這個抽屜中安裝的任何軟體都不會影響其他醜態,並且在專案中,我們可以指定乙個專案的虛擬環境來配合我的專案,比如我們現在有乙個專案是基於 django 1.10.x 版本,又有乙個專案是基於 django 0.9.x 的版本,那麼這個時候就可以建立兩個虛擬環境,在這兩個虛擬環境中分別安裝 django 1.10.x 和 django 0.9.x 來配合我們的專案。
正式安裝
1、安裝 virtualenv
virtualenv 是用來建立虛擬環境的軟體工具,我們可以通過 pip 或者 pip3 來安裝:
pip install virtualenv或者pip3 install virtualenv
2、建立虛擬環境
建立虛擬環境非常簡單,通過以下命令就可以建立了:
virtualenv [虛擬環境名稱]
如果你當前的 python3/scripts 的查詢路徑在 python2/scripts 的前面,那麼將會使用 python3 作為這個虛擬環境的直譯器。否則反之。
3、進入虛擬環境
虛擬環境建立好了以後,那麼可以進入到這個虛擬環境中,然後安裝一些第三方包,進入虛擬環境在不同的作業系統中有不同的方式,一般分為 windows , 第二種 *nix
windows 進入虛擬環境的 scripts 資料夾中, 然後執行 activate
*nix 進入虛擬環境: source /path/to/virtualenv/bin/activare , 一旦你進入到這個虛擬環境中,你安裝包,解除安裝包都是在這個虛擬環境中,不會影響到外面的環境。
4、退出虛擬環境
退出虛擬環境和簡單,通過乙個命令就可以完成: deactivate
建立虛擬環境的時候指定 python 直譯器:
在電腦的環境變數中,一般是不會去改變一些環境變數的順序的,也就是說比如你的 python2/scripts 在 python3/scripts 的前面,那麼你不會經常去更改他們的位置,但是這時候我們確實是想在虛擬環境中使用 python3 這個版本,這時候可以通過 -p 引數來指定具體 python 直譯器:
virtualenv -p c:\python3.6\python.exe [virtualenv name]
**重點**
1、建立虛擬環境
mkvirtualenv my_env
3、切換到某個虛擬環境中
workon my_env
4、退出當前虛擬環境
deactivate
5、刪除某個虛擬環境
rmvirtualenv my_env
6、列出所有虛擬環境
lsvirtualenv
7、進入到虛擬環境所在目錄
cdvirtualenv
更改 mkvirtualenv 的預設路徑:
在 我的電腦 -> 右鍵 -> 屬性 -> 高階系統設定 -> 環境變數 -> 系統變數 中新增乙個引數 workon_home 將這個引數的值設定為你想要放置的路徑。
建立虛擬環境的時候指定 python 版本
在使用 mkvirtualenv 的時候,可以指定 --python 的引數來指定具體的 python 路徑:
mkvirtualenv --python==c:\python.exe my_env
python虛擬環境詳解
一 什麼事虛擬環境以及為什麼使用虛擬環境 所有的第三方包安裝 都是直接通過 pip install xx的方式 進行安裝,這樣安裝就會將拿個包安裝到你的系統級的python環境中,但是有這樣乙個問題 全域性環境 模板 虛擬出兩個環境 兩個獨立的虛擬環境 專案一 直接使用 django1.11版本的環...
python開發環境配置虛擬環境
python 2和python 3之間存在著較大的差異,並且,由於各種原因導致了python 2和python 3的長期共存。在實際工作過程中,我們可能會同時用到python 2和python 3,因此,也需要經常在python 2和python 3之間進行來回切換。這就需要對python的版本進行...
Python虛擬環境venv用法詳解
初衷 在工作的時候,我們會有很多個專案,每個專案使用的庫的版本不一樣,導致我們切換專案的時候會很麻煩。比如 我有兩個djwurwppsfan程式設計客棧go專案,專案一使用的版本是 django 1.7 專案二使用的版本是 django 2.2。兩個專案平時都要維護,如果沒有獨立的環境,那我每次維護...