virtualenv
virtualenv 是一個可以在同一計算機中隔離多個python版本的工具。有時,兩個不同的項目可能需要不同版本的python,如 python2.6.6 / python3.0 ,但是如果都裝到一起,經常會導致問題。所以需要一個工具能夠將這兩種或幾種不同版本的環境隔離開來,需要哪個版本就切換到哪個版本做為默認版本。
virtualenv 既是滿足這個需求的工具。它能夠用於創建獨立的Python環境,多個Python相互獨立,互不影響,能夠:
-
在沒有權限的情況下安裝新套件
-
不同應用可以使用不同的套件版本
-
套件升級不影響其他應用
安裝:
-
pip install virtualenv
使用方法
1. 創建環境
-
virtualenv [新環境名] :這會再當前目錄下創建一個新環境目錄
-
可使用 virtualenv --help 來查看如何使用。可以使用參數 --python=/usr/bin/python3 來創建一個已經安裝的的Python環境。
2. 使用環境
-
切換到新環境目錄
-
執行:source ./bin/activate 來激活環境,激活后在命令行的前面會出現新環境名稱
-
接下來可使用pip命令安裝新環境需要的各種包。(pip命令在創建新環境時自帶)
3. 退出虛擬環境
-
deactivate
-
如果要刪除虛擬環境,只需退出虛擬環境后,刪除對應的虛擬環境目錄即可。不影響其他環境。
4. 注意事項
-
如果沒有啟動虛擬環境,系統也安裝了pip工具,那么套件將被安裝在系統環境中,為了避免發生此事,可以在~/.bashrc文件中加上:export PIP_REQUIRE_VIRTUALENV=true
-
或者讓在執行pip的時候讓系統自動開啟虛擬環境:export PIP_RESPECT_VIRTUALENV=true
virtualenvwrapper
virtualenvwrapper是virtualenv的擴展管理包,用於更方便管理虛擬環境,它可以做:
- 將所有虛擬環境整合在一個目錄下
- 管理(新增,刪除,復制)虛擬環境
- 切換虛擬環境
安裝
-
pip install virtualenvwrapper
使用方法
1. 初始配置
默認virtualenvwrapper安裝在/usr/local/bin下面,實際上需要運行virtualenvwrapper.sh文件才行;所以需要先進行配置一下:
-
創建虛擬環境管理目錄: mkdir $HOME/.local/virtualenvs
-
在~/.bashrc中添加行:
export VIRTUALENV_USE_DISTRIBUTE=1 # 總是使用 pip/distribute export WORKON_HOME=$HOME/.local/virtualenvs # 所有虛擬環境存儲的目錄 if [ -e $HOME/.local/bin/virtualenvwrapper.sh ]; then source $HOME/.local/bin/virtualenvwrapper.sh else if [ -e /usr/local/bin/virtualenvwrapper.sh ];then source /usr/local/bin/virtualenvwrapper.sh fi fi export PIP_VIRTUALENV_BASE=$WORKON_HOME export PIP_RESPECT_VIRTUALENV=true
-
啟動 virtualenvwrapper :
source ~/.bashrc
2. 使用方法
所有的命令可使用:virtualenvwrapper --help 進行查看,這里列出幾個常用的:
-
創建基本環境:mkvirtualenv [環境名]
-
刪除環境:rmvirtualenv [環境名]
-
激活環境:workon [環境名]
-
退出環境:deactivate
-
列出所有環境:workon 或者 lsvirtualenv -b
配上別名設置:
# virtualenv alias vte='virtualenv' alias mkvte='mkvirtualenv' alias deact='deactivate' alias rmvte='rmvirtualenv'
所有命令都可在后面使用 --help 參數查看具體用法!