python安装虚拟环境virtualenv
虛擬環(huán)境
虛擬環(huán)境是一個(gè)將不同項(xiàng)目所需求的依賴分別放在獨(dú)立的地方的一個(gè)工具,它給這些工程創(chuàng)建虛擬的Python環(huán)境。它解決了“項(xiàng)目X依賴于版本1.x,而項(xiàng)目Y需要項(xiàng)目4.x”的兩難問題,而且使你的全局site-packages目錄保持干凈和可管理。
比如,你可以工作在一個(gè)需求Django 1.3的工程,同時(shí)維護(hù)一個(gè)需求Django 1.0的工程。
virtualenv
virtualenv?是一個(gè)創(chuàng)建隔絕的Python環(huán)境的工具。virtualenv創(chuàng)建一個(gè)包含所有必要的可執(zhí)行文件的文件夾,用來(lái)使用Python工程所需的包。
通過pip安裝virtualenv:
$ pip install virtualenv
基本使用
- 為一個(gè)工程創(chuàng)建一個(gè)虛擬環(huán)境:
$ cd my_project_folder
$ virtualenv venv
virtualenv?venv?將會(huì)在當(dāng)前的目錄中創(chuàng)建一個(gè)文件夾,包含了Python可執(zhí)行文件,以及pip?庫(kù)的一份拷貝,這樣就能安裝其他包了。虛擬環(huán)境的名字(此例中是?venv?)可以是任意的;若省略名字將會(huì)把文件均放在當(dāng)前目錄。
在任何你運(yùn)行命令的目錄中,這會(huì)創(chuàng)建Python的拷貝,并將之放在叫做?venv?的文件中。
你可以選擇使用一個(gè)Python解釋器:
$ virtualenv -p /usr/bin/python2.7 venv
這將會(huì)使用?/usr/bin/python2.7?中的Python解釋器。
- 要開始使用虛擬環(huán)境,其需要被激活:
$ source venv/bin/activate
當(dāng)前虛擬環(huán)境的名字會(huì)顯示在提示符左側(cè)(比如說(shuō)?(venv)你的電腦:你的工程?用戶名$)以讓你知道它是激活的。從現(xiàn)在起,任何你使用pip安裝的包將會(huì)放在?``venv?文件夾中,與全局安裝的Python隔絕開。
像平常一樣安裝包,比如:
$ pip install requests
- 如果你在虛擬環(huán)境中暫時(shí)完成了工作,則可以停用它:
$ deactivate
這將會(huì)回到系統(tǒng)默認(rèn)的Python解釋器,包括已安裝的庫(kù)也會(huì)回到默認(rèn)的。
要?jiǎng)h除一個(gè)虛擬環(huán)境,只需刪除它的文件夾。(要這么做請(qǐng)執(zhí)行?rm?-rf?venv?)
然后一段時(shí)間后,你可能會(huì)有很多個(gè)虛擬環(huán)境散落在系統(tǒng)各處,你將有可能忘記它們的名字或者位置。
其他注意
運(yùn)行帶?--no-site-packages?選項(xiàng)的?virtualenv?將不會(huì)包括全局安裝的包。這可用于保持包列表干凈,以防以后需要訪問它。(這在?virtualenv?1.7及之后是默認(rèn)行為)
為了保持你的環(huán)境的一致性,“冷凍住(freeze)”環(huán)境包當(dāng)前的狀態(tài)是個(gè)好主意。要這么做,請(qǐng)運(yùn)行:
$ pip freeze > requirements.txt
這將會(huì)創(chuàng)建一個(gè)?requirements.txt?文件,其中包含了當(dāng)前環(huán)境中所有包及各自的版本的簡(jiǎn)單列表。你可以使用 “pip list”在不產(chǎn)生requirements文件的情況下,查看已安裝包的列表。這將會(huì)使另一個(gè)不同的開發(fā)者(或者是你,如果你需要重新創(chuàng)建這樣的環(huán)境)在以后安裝相同版本的相同包變得容易。
$ pip install -r requirements.txt
這能幫助確保安裝、部署和開發(fā)者之間的一致性。
最后,記住在源碼版本控制中排除掉虛擬環(huán)境文件夾,可在ignore的列表中加上它。
virtualenvwrapper
virtualenvwrapper?提供了一系列命令使得和虛擬環(huán)境工作變得愉快許多。它把你所有的虛擬環(huán)境都放在一個(gè)地方。
安裝(確保?virtualenv?已經(jīng)安裝了):
$ pip install virtualenvwrapper
$ export WORKON_HOME=~/Envs
$ source /usr/local/bin/virtualenvwrapper.sh (virtualenvwrapper 的完整安裝指引.)
對(duì)于Windows,你可以使用?virtualenvwrapper-win?。
To install (make sure?virtualenv?is already installed): 安裝(確保?virtualenv?已經(jīng)安裝了):
$ pip install virtualenvwrapper-win
在Windows中,WORKON_HOME默認(rèn)的路徑是 %USERPROFILE%Envs 。
基本使用
- 創(chuàng)建一個(gè)虛擬環(huán)境:
$ mkvirtualenv venv
這會(huì)在?~/Envs?中創(chuàng)建?venv?文件夾。
- 在虛擬環(huán)境上工作:
$ workon venv
或者,你可以創(chuàng)建一個(gè)項(xiàng)目,它會(huì)創(chuàng)建虛擬環(huán)境,并在?$PROJECT_HOME?中創(chuàng)建一個(gè)項(xiàng)目目錄。當(dāng)你使用?workon?myproject?時(shí),會(huì)?cd?-ed 到項(xiàng)目目錄中。
$ mkproject myproject
virtualenvwrapper?提供環(huán)境名字的tab補(bǔ)全功能。當(dāng)你有很多環(huán)境,并且很難記住它們的名字時(shí),這就顯得很有用。
workon?也能停止你當(dāng)前所在的環(huán)境,所以你可以在環(huán)境之間快速的切換。
- 停止是一樣的:
$ deactivate
- 刪除:
$ rmvirtualenv venv
0x04 virtualenvwrapper 切換版本
virtualenvwrapper是管理Python虛擬環(huán)境的工具,可以很方便的為不同的項(xiàng)目建立獨(dú)立的環(huán)境,每個(gè)項(xiàng)目都可以安裝自己的依賴,同時(shí)也支持在不同的虛擬環(huán)境中存在不同版本的Python。
首先安裝virtualenvwrapper,可以選擇apt安裝或者pip安裝
apt安裝
$ sudo apt-get install virtualenvwrapper
pip安裝
$ sudo pip install virtualenvwrapper
當(dāng)你需要使用Python2開發(fā)項(xiàng)目時(shí),建立一個(gè)Python2的虛擬環(huán)境:
$ mkvirtualenv -p /usr/bin/python2 env27
當(dāng)你需要Python3開發(fā)時(shí):
$ mkvirtualenv -p /usr/bin/python3.4 env34
然后可以隨時(shí)切換不同的虛擬環(huán)境:
$ workon env27 # 進(jìn)入Python2環(huán)境
$ workon env34 # 進(jìn)入Python3環(huán)境
更爽的是,你可以在進(jìn)入虛擬環(huán)境的同時(shí)切換到項(xiàng)目目錄,只需要編輯 $VIRTUAL_ENV/bin/postactivate 這個(gè)文件即可:
$ vim $VIRTUAL_ENV/bin/postactivate #前提是已經(jīng)進(jìn)入對(duì)應(yīng)的虛擬環(huán)境
在文件中添加切換目錄的命令:
cd /path/to/your/project
其他有用的命令
- 列舉所有的環(huán)境。
- 導(dǎo)航到當(dāng)前激活的虛擬環(huán)境的目錄中,比如說(shuō)這樣你就能夠?yàn)g覽它的?
site-packages。 - 和上面的類似,但是是直接進(jìn)入到?
site-packages?目錄中。 - 顯示?
site-packages?目錄中的內(nèi)容。
lsvirtualenvcdvirtualenvcdsitepackageslssitepackagesvirtualenvwrapper 命令的完全列表?。
virtualenv-burrito
有了?virtualenv-burrito?,你就能使用單行命令擁有virtualenv + virtualenvwrapper的環(huán)境。
autoenv
當(dāng)你?cd?進(jìn)入一個(gè)包含?.env?的目錄中,就會(huì)?autoenv?自動(dòng)激活那個(gè)環(huán)境。
使用?brew?在Mac OS X上安裝它:
$ brew install autoenv
在Linux上:
$ git clone git://github.com/kennethreitz/autoenv.git ~/.autoenv
$ echo 'source ~/.autoenv/activate.sh' >> ~/.bashrc
轉(zhuǎn)載于:https://www.cnblogs.com/xiongmozhou/p/9102646.html
總結(jié)
以上是生活随笔為你收集整理的python安装虚拟环境virtualenv的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: closer是谁唱的啊?
- 下一篇: 黄山风景区离哪个火车站近