學(xué)過的東西瑟啃,如果因?yàn)闆]用過就忘記了辱魁,那就是相當(dāng)于沒學(xué)過吧谤碳?
virtualenv
虛擬環(huán)境是一個(gè)可以把不同項(xiàng)目所需要的依賴獨(dú)立開來的工具佑钾,它創(chuàng)建了一個(gè)虛擬的 python 環(huán)境,解決了不同項(xiàng)目依賴不同版本烂翰,
不同庫等問題夯缺,而且讓 我們的全局 python 環(huán)境保持干凈和可管理。
安裝
可通過 pip 安裝:
pip install virtualenv
使用
- 創(chuàng)建存放虛擬環(huán)境的目錄
cd project_folder
- 創(chuàng)建虛擬環(huán)境
virtualenv -p /usr/bin/python2 project
說明:
-p 是選擇一個(gè) python 解釋器甘耿,不指定就是默認(rèn)的 python 解釋器
- 激活
source project/bin/activate
說明:
激活后提示符左側(cè)會(huì)有激活成功的提示,激活后就是使用虛擬的 python 環(huán)境了
如:(env)[root@localhost ~] #
- 停用
deactivate
說明: 使用完后踊兜,想要切換為全局 python 環(huán)境就要使用這條命令。
其他
- virtualenv 的 --no-site-packages 參數(shù)是指不會(huì)包括全局安裝的包棵里。(virtualenv 1.7 版本后是默認(rèn)參數(shù))
- 關(guān)于 pip 的妙用
使用pip freeze > requirements.txt
可以把當(dāng)前環(huán)境中的所有包和各自的版本寫入 requirements.txt 里润文,
然后姐呐,使用pip install -r requirements.txt
就安裝文件里相應(yīng)版本的包
virtualenvwrapper
virtualenvwrapper 是 virtualenv 的擴(kuò)展包。提供了更加方便的功能典蝌。
安裝
pip install virtualenvwrapper
提供環(huán)境
export WORKON_HOME=$HOME/.virtualenvs
export MSYS_HOME=C:\msys\1.0
export PROJECT_HOME=/home/mroot/python/wrapper/
說明:
可能環(huán)境變量有變化曙砂,具體應(yīng)該參考官網(wǎng)。
激活
source /usr/bin/virtualenvwrapper.sh
說明:
路徑不同系統(tǒng)存在偏差骏掀,具體參考官網(wǎng)
使用
- 創(chuàng)建虛擬環(huán)境
mkvirtualenv project
說明:
創(chuàng)建的虛擬環(huán)境會(huì)保存在之前設(shè)置的 WORKON_HOME 目錄里
- 工作
workon project
說明: 在創(chuàng)建虛擬環(huán)境時(shí)默認(rèn)就進(jìn)入了工作模式鸠澈,這個(gè)命令可以在沒在工作模式使用
- 創(chuàng)建項(xiàng)目
mkproject project
說明:
這個(gè)命令可以創(chuàng)建虛擬環(huán)境,同時(shí)創(chuàng)建項(xiàng)目截驮,并且自動(dòng)進(jìn)入項(xiàng)目根目錄
- 停用
deactivate
說明: 使用完后笑陈,想要切換為全局 python 環(huán)境就要使用這條命令。
其他
lsvirtualenv: 列舉所有的環(huán)境葵袭。
cdvirtualenv: 導(dǎo)航到當(dāng)前激活的虛擬環(huán)境的目錄中涵妥,比如說這樣你就能夠?yàn)g覽它的 site-packages 。
lssitepackages: 顯示 site-packages 目錄中的內(nèi)容坡锡。
參考
http://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html
https://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html