Windows中安裝使用Virtualenv來(lái)創(chuàng)建獨(dú)立Python環(huán)境
0、什么時(shí)候會(huì)用到virtualenv?
假設(shè)系統(tǒng)中的兩個(gè)應(yīng)用,其中A應(yīng)用對(duì)庫(kù)LibFoo的版本要求為1,而B(niǎo)應(yīng)用對(duì)同一個(gè)庫(kù)LibFoo的版本要求為2,兩個(gè)應(yīng)用對(duì)同一個(gè)庫(kù)的要求想沖突了,而系統(tǒng)中庫(kù)默認(rèn)都安裝到/usr/lib/python2.7/site-packages,那么如何能夠同時(shí)使用這兩個(gè)應(yīng)用呢?
你的用戶(hù)權(quán)限不夠,使得無(wú)法將包安裝到site-packages目錄
需要使用一個(gè)應(yīng)用,并且與系統(tǒng)其它應(yīng)用相獨(dú)立。
如果你遇到以上的問(wèn)題,那么virtualenv會(huì)對(duì)你有幫助。virtualenv可以創(chuàng)建一個(gè)環(huán)境,擁有著自己的安裝目錄,而不會(huì)與系統(tǒng)的共享庫(kù)或者其它virtualenv環(huán)境相干擾。
1、安裝virtualenv
在安裝virtualenv之前,我們需要安裝至少有一個(gè)版本的Python;因?yàn)関irtualenv是python的一個(gè)第三方模塊,必須基于python環(huán)境才能安裝;
如果你的python環(huán)境有pip,那么直接使用命令:
pip install virtualenv
安裝之后需要新建virtualenv的獨(dú)立環(huán)境,具體可以查看其幫助命令:
virtualenv -h

常用的參數(shù)有:
-p:指定一個(gè)版本python環(huán)境;通常當(dāng)你的系統(tǒng)中安裝了多個(gè)python版本時(shí)會(huì)用到;默認(rèn)情況下virtualenv會(huì)優(yōu)先選取它的宿主python環(huán)境,即它安裝在那個(gè)python版本下就會(huì)默認(rèn)選擇哪個(gè)版本作為默認(rèn)python隔離環(huán)境。
--no-site-packages:不使用系統(tǒng)環(huán)境的python安裝包,即隔離包中不能使用真實(shí)python環(huán)境的安裝包;當(dāng)前版本這個(gè)選項(xiàng)是默認(rèn)的。
--system-site-packages:與上面相反,使隔離環(huán)境能訪問(wèn)系統(tǒng)環(huán)境的python安裝包
--distribute:copy一個(gè)python環(huán)境的分支,默認(rèn)會(huì)安裝setup、pip、wheel等基礎(chǔ)模塊
2、激活
安裝完了之后就可以創(chuàng)建一個(gè)隔離環(huán)境了,使用命令:
virtualenv envname ##創(chuàng)建一個(gè)新的隔離環(huán)境 cd envname Scripts\activate ##激活并切換到virtualenv環(huán)境
創(chuàng)建并激活virtualenv環(huán)境后我們就可以正常的方式來(lái)使用和安裝python安裝包及模塊了。也可以直接切換到需要執(zhí)行的python文件目錄,使用python xxx.py來(lái)保證在隔離環(huán)境下執(zhí)行python文件。
即:我們?cè)谛枰褂胿irtualenv環(huán)境之前,只要先激活然后使用以往同樣的方式來(lái)執(zhí)行python操作、運(yùn)行python文件即可
cd my_project_folder virtual ENV source bin/activate deactivate
以上就是virtualenv的基本使用過(guò)程。首先,virtual ENV會(huì)在當(dāng)前目錄創(chuàng)建名為ENV的虛擬環(huán)境,此時(shí)在當(dāng)前目錄會(huì)自動(dòng)生成三個(gè)目錄:bin, include和lib。默認(rèn)情況下創(chuàng)建的虛擬環(huán)境會(huì)依賴(lài)于系統(tǒng)中的site-packages,即系統(tǒng)中已經(jīng)安裝好的庫(kù)在虛擬環(huán)境中仍然可以使用,如果想去除依賴(lài),那么可以:
virtualenv --no-site-packages ENV
4、集成到開(kāi)發(fā)環(huán)境
當(dāng)前在PyCharm中是支持virtualenv環(huán)境集成的,其它的IDE暫時(shí)未研究,集成也是很方便的:
(1)新建一個(gè)項(xiàng)目
(2)點(diǎn)擊解釋器欄的設(shè)置icon
(3)選擇virtualenv
(4)可以新建也可以選擇一個(gè)已有的virtualenv環(huán)境
配置到之后我們也可以在該項(xiàng)目中測(cè)試下,選擇一個(gè)區(qū)別與系統(tǒng)環(huán)境的安裝模塊,查看下其版本是否正確,我這里因?yàn)橛?個(gè)django版本,所以使用django模塊來(lái)測(cè)試的,得到的是正確的結(jié)果。
- python安裝virtualenv虛擬環(huán)境步驟圖文詳解
- python虛擬環(huán)境的安裝和配置(virtualenv,virtualenvwrapper)
- windows下python虛擬環(huán)境virtualenv安裝和使用詳解
- windows下安裝Python虛擬環(huán)境virtualenvwrapper-win
- python虛擬環(huán)境virtualenv的使用教程
- python虛擬環(huán)境virtualenv的安裝與使用
- 用virtualenv建立多個(gè)Python獨(dú)立虛擬開(kāi)發(fā)環(huán)境
- Python虛擬環(huán)境virtualenv的安裝與使用詳解
- 如何使用virtualenv管理python環(huán)境
相關(guān)文章
Python腳本打包成可執(zhí)行文件過(guò)程解析
這篇文章主要介紹了Python腳本打包成可執(zhí)行文件過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10python使用bs4爬取boss直聘靜態(tài)頁(yè)面
這篇文章主要介紹了python如何使用bs4爬取boss直聘靜態(tài)頁(yè)面,幫助大家更好的理解和學(xué)習(xí)爬蟲(chóng),感興趣的朋友可以了解下2020-10-10Python?Pexpect庫(kù)自動(dòng)化交互式進(jìn)程控制的expect_list方法解析
Pexpect是一個(gè)Python庫(kù),為自動(dòng)化和交互式進(jìn)程控制提供了豐富的功能,而expect_list方法是其功能強(qiáng)大且靈活的一部分,將詳細(xì)探討如何使用這一方法,并提供多個(gè)示例來(lái)說(shuō)明其應(yīng)用場(chǎng)景和功能2024-01-01Python socket模塊ftp傳輸文件過(guò)程解析
這篇文章主要介紹了Python socket模塊ftp傳輸文件過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Python?Pandas?修改表格數(shù)據(jù)類(lèi)型?DataFrame?列的順序案例
這篇文章主要介紹了Python?Pandas?修改表格數(shù)據(jù)類(lèi)型?DataFrame?列的順序案例,文章通過(guò)主題展開(kāi)詳細(xì)的相關(guān)內(nèi)容,感興趣的小伙伴可以參考一下2022-08-08解決Python獲取字典dict中不存在的值時(shí)出錯(cuò)問(wèn)題
今天小編就為大家分享一篇解決Python獲取字典dict中不存在的值時(shí)出錯(cuò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10Python進(jìn)階篇之多線(xiàn)程爬取網(wǎng)頁(yè)
這篇文章主要為大家介紹了Python進(jìn)階中利用多線(xiàn)程來(lái)爬取網(wǎng)頁(yè)的示例實(shí)現(xiàn)及解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-10-10Python實(shí)現(xiàn)的合并兩個(gè)有序數(shù)組算法示例
這篇文章主要介紹了Python實(shí)現(xiàn)的合并兩個(gè)有序數(shù)組算法,涉及Python針對(duì)數(shù)組的遍歷、計(jì)算、追加等相關(guān)操作技巧,需要的朋友可以參考下2019-03-03