虛擬環境
為什么需要虛擬環境:
到目前位置,我們所有的第三方包安裝都是直接通過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來適配我們的項目。
安裝virtualenv:
virtualenv是用來創建虛擬環境的軟件工具,我們可以通過pip或者pip3來安裝:
pip install virtualenv
pip3 install virtualenv
創建虛擬環境:
創建虛擬環境非常簡單,通過以下命令就可以創建了:
virtualenv [虛擬環境的名字]
如果你當前的Python3/Scripts的查找路徑在Python2/Scripts的前面,那么將會使用python3作為這個虛擬環境的解釋器。如果python2/Scripts在python3/Scripts前面,那么將會使用Python2來作為這個虛擬環境的解釋器。
進入環境:
虛擬環境創建好了以后,那么可以進入到這個虛擬環境中,然后安裝一些第三方包,進入虛擬環境在不同的操作系統中有不同的方式,一般分為兩種,第一種是Windows,第二種是*nix:
windows進入虛擬環境:進入到虛擬環境的Scripts文件夾中,然后執行activate。
*nix進入虛擬環境:source /path/to/virtualenv/bin/activate
一旦你進入到了這個虛擬環境中,你安裝包,卸載包都是在這個虛擬環境中,不會影響到外面的環境。
退出虛擬環境:
退出虛擬環境很簡單,通過一個命令就可以完成:deactivate。
創建虛擬環境的時候指定Python解釋器:
在電腦的環境變量中,一般是不會去更改一些環境變量的順序的。也就是說比如你的Python2/Scripts在Python3/Scripts的前面,那么你不會經常去更改他們的位置。但是這時候我確實是想在創建虛擬環境的時候用Python3這個版本,這時候可以通過-p參數來指定具體的Python解釋器:
virtualenv -p C:\Python36\python.exe [virutalenv name]
virtualenvwrapper:
virtualenvwrapper這個軟件包可以讓我們管理虛擬環境變得更加簡單。不用再跑到某個目錄下通過virtualenv來創建虛擬環境,並且激活的時候也要跑到具體的目錄下去激活。
安裝virtualenvwrapper:
*nix:pip install virtualenvwrapper。
windows:pip install virtualenvwrapper-win。
virtualenvwrapper基本使用:
創建虛擬環境:
mkvirtualenv my_env
那么會在你當前用戶下創建一個Env的文件夾,然后將這個虛擬環境安裝到這個目錄下。
如果你電腦中安裝了python2和python3,並且兩個版本中都安裝了virtualenvwrapper,那么將會使用環境變量中第一個出現的Python版本來作為這個虛擬環境的Python解釋器。
切換到某個虛擬環境:
workon my_env
退出當前虛擬環境:
deactivate
刪除某個虛擬環境:
rmvirtualenv my_env
列出所有虛擬環境:
lsvirtualenv
進入到虛擬環境所在的目錄:
cdvirtualenv
修改mkvirtualenv的默認路徑:
在我的電腦->右鍵->屬性->高級系統設置->環境變量->系統變量中添加一個參數WORKON_HOME,將這個參數的值設置為你需要的路徑。
創建虛擬環境的時候指定Python版本:
在使用mkvirtualenv的時候,可以指定--python的參數來指定具體的python路徑:
mkvirtualenv --python==C:\Python36\python.exe hy_env
win上配置pipe 源下載更快
1.進入家目錄
2.新建文件夾pip
3.創建pip.ini 文件 輸入代碼
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
添加 :解決虛擬環境更新pip不可用
今天 安裝其它python包時,提示說 pip 10.0.1可用,就更新了一下,但是 更新過程中出現了錯誤
因為這個錯誤導致 pip找不到,
可以首先執行 python -m ensurepip 然后執行 python -m pip install --upgrade pip 即可更新完畢。