參考文章
virtualenv
I 用pip安裝virtualenv
pip install virtualenv
如果失敗,可以換sudo pip install virtualenv,如果還不行,那就根據(jù)問題提示Google吧.
II 假定我們要開發(fā)一個(gè)新的項(xiàng)目,需要一套獨(dú)立的Python運(yùn)行環(huán)境,先創(chuàng)建文件夾,例如命名為myproject
mkdir myproject
cd myprojict
III 在myproject目錄下,創(chuàng)建一個(gè)獨(dú)立的Python運(yùn)行環(huán)境,例如命名為env1
virtualenv --no-site-packages env1
命令virtualenv就可以創(chuàng)建一個(gè)獨(dú)立的Python運(yùn)行環(huán)境,我們還加上了參數(shù)--no-site-packages,這樣,已經(jīng)安裝到系統(tǒng)Python環(huán)境中的所有第三方包都不會(huì)復(fù)制過來,這樣,我們就得到了一個(gè)不帶任何第三方包的“干凈”的Python運(yùn)行環(huán)境。
IV 進(jìn)入env1環(huán)境
source env1/bin/activate
注意此時(shí)命令行會(huì)多一個(gè)(env1),env1為虛擬環(huán)境名稱,接下來所有模塊都只會(huì)安裝到該目錄中去。
接下來你可以用pip安裝包了.
V 退出環(huán)境
deactivate
此時(shí)就回到了正常的環(huán)境,現(xiàn)在pip或python均是在系統(tǒng)Python環(huán)境下執(zhí)行。
VI 刪除環(huán)境,直接刪除環(huán)境所在文件夾
rm -r env1
virtualenv是如何創(chuàng)建“獨(dú)立”的Python運(yùn)行環(huán)境的呢?原理很簡單,就是把系統(tǒng)Python復(fù)制一份到virtualenv的環(huán)境,用命令source venv/bin/activate進(jìn)入一個(gè)virtualenv環(huán)境時(shí),virtualenv會(huì)修改相關(guān)環(huán)境變量,讓命令python和pip均指向當(dāng)前的virtualenv環(huán)境。
virtualenvwrapper
virtualenvwrapper是virtualenv的擴(kuò)展包,可以更方便地新增,刪除,復(fù)制,切換虛擬環(huán)境。
I 利用pip安裝
pip install virtualenvwrapper
同virtualenv,如果上面的命令不行,用sudo pip install virtualenvwrapper試試.
II 接下來創(chuàng)建我們今后使用Python的虛擬環(huán)境文件夾,例如命名為PythonVirtualEnv
mkdir PythonVirtualEnv
此時(shí),還使用不了virtualenvwrapper的命令,因?yàn)関irtualenvwrapper默認(rèn)安裝在/usr/local/bin下面,實(shí)際上你需要運(yùn)行virtualenvwrapper.sh文件才行,這需要配置環(huán)境變量.
注:你可以用vi virtualenvwrapper.sh,查看環(huán)境變量的配置說明,摘出來如下:
# Setup:
#
# 1. Create a directory to hold the virtual environments.
# (mkdir $HOME/.virtualenvs).
# 2. Add a line like "export WORKON_HOME=$HOME/.virtualenvs"
# to your .bashrc.
# 3. Add a line like "source /path/to/this/file/virtualenvwrapper.sh"
# to your .bashrc.
# 4. Run: source ~/.bashrc
# 5. Run: workon
# 6. A list of environments, empty, is printed.
# 7. Run: mkvirtualenv temp
# 8. Run: workon
# 9. This time, the "temp" environment is included.
# 10. Run: workon temp
# 11. The virtual environment is activated.
#
因?yàn)槲矣玫膠sh,所以需要在~/.zshrc中添加
export WORKON_HOME=$HOME/PythonVirtualEnv
source /usr/local/bin/virtualenvwrapper.sh
PythonVirtualEnv是我們剛才創(chuàng)建的文件夾.
保存退出.zshrc,重啟終端(iTerm),或者source ~/.zshrc.
III 這樣我們就可以用virtualenvwrapper命令了
- 列出虛擬環(huán)境列表: workon 或者 lsvirtualenv
- 新建虛擬環(huán)境: mkvirtualenv [虛擬環(huán)境名稱]
- 新建一個(gè)python3的虛擬環(huán)境: mkvirtualenv -p python3 [虛擬環(huán)境名稱]
- 啟動(dòng)/切換虛擬環(huán)境: workon [虛擬環(huán)境名稱]
- 進(jìn)入當(dāng)前環(huán)境: cdvirtualenv
- 查看環(huán)境里安裝了那些包: lssitepackages
- 進(jìn)入當(dāng)前環(huán)境的site-paceages: cdsitepackages
- 進(jìn)入當(dāng)前環(huán)境的site-paceages的某個(gè)包(比如pip): cdsitepackages pip
- 復(fù)制虛擬環(huán)境: cpvirtualenv env1 env3
- 刪除虛擬環(huán)境: rmvirtualenv [虛擬環(huán)境名稱]
- 離開虛擬環(huán)境: deactivate