Python virtualenv 的使用

文中知識(shí)點(diǎn)學(xué)習(xí)自 : http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001432712108300322c61f256c74803b43bfd65c6f8d0d0000

在開發(fā)Python應(yīng)用程序的時(shí)候银酬,系統(tǒng)安裝的Python3只有一個(gè)版本:3.4助析。所有第三方的包都會(huì)被pip安裝到Python3的site-packages目錄下。

如果我們要同時(shí)開發(fā)多個(gè)應(yīng)用程序省撑,那這些應(yīng)用程序都會(huì)共用一個(gè)Python道偷,就是安裝在系統(tǒng)的Python 3吩谦。如果應(yīng)用A需要jinja 2.7术徊,而應(yīng)用B需要jinja 2.6怎么辦藕届?

這種情況下挪蹭,每個(gè)應(yīng)用可能需要各自擁有一套“獨(dú)立”的Python運(yùn)行環(huán)境。virtualenv就是用來為一個(gè)應(yīng)用創(chuàng)建一套“隔離”的Python運(yùn)行環(huán)境休偶。

安裝:

$ sudo pip install virtualenv

使用:

1梁厉、創(chuàng)建項(xiàng)目目錄

$ mkdir virenv
$ cd virenv/

2、創(chuàng)建一個(gè)獨(dú)立的Python運(yùn)行環(huán)境踏兜,命名為venv

$ virtualenv --no-site-packages venv
New python executable in /root/virenv/venv/bin/python
Installing setuptools, pip, wheel...done.

命令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)境疹尾。

3上忍、進(jìn)入環(huán)境

新建的Python環(huán)境被放到當(dāng)前目錄下的venv目錄。有了venv這個(gè)Python環(huán)境航棱,可以用source進(jìn)入該環(huán)境:

$ source venv/bin/activate
(venv) root@sate-z:~/virenv#
# 注意到命令提示符變了睡雇,有個(gè)(venv)前綴,表示當(dāng)前環(huán)境是一個(gè)名為venv的Python環(huán)境饮醇。

下面正常安裝各種第三方包它抱,并運(yùn)行python命令

root@sate-z:~/virenv# pip install lxml

venv環(huán)境下,用pip安裝的包都被安裝到venv這個(gè)環(huán)境下朴艰,系統(tǒng)Python環(huán)境不受任何影響观蓄。也就是說,venv環(huán)境是專門針對myproject這個(gè)應(yīng)用創(chuàng)建的祠墅。

退出當(dāng)前的venv環(huán)境侮穿,使用deactivate命令:

(venv) root@sate-z:~/virenv# deactivate
root@sate-z:~/virenv#

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)境變量,讓命令pythonpip均指向當(dāng)前的virtualenv環(huán)境。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末克锣,一起剝皮案震驚了整個(gè)濱河市茵肃,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌袭祟,老刑警劉巖验残,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異巾乳,居然都是意外死亡您没,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進(jìn)店門胆绊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來氨鹏,“玉大人,你說我怎么就攤上這事辑舷∮骼纾” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵何缓,是天一觀的道長肢础。 經(jīng)常有香客問我,道長碌廓,這世上最難降的妖魔是什么传轰? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮谷婆,結(jié)果婚禮上慨蛙,老公的妹妹穿的比我還像新娘。我一直安慰自己纪挎,他們只是感情好期贫,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著异袄,像睡著了一般通砍。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上烤蜕,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天封孙,我揣著相機(jī)與錄音,去河邊找鬼讽营。 笑死虎忌,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的橱鹏。 我是一名探鬼主播膜蠢,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼堪藐,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了挑围?” 一聲冷哼從身側(cè)響起庶橱,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎贪惹,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寂嘉,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡奏瞬,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了泉孩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片硼端。...
    茶點(diǎn)故事閱讀 38,664評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖寓搬,靈堂內(nèi)的尸體忽然破棺而出珍昨,到底是詐尸還是另有隱情,我是刑警寧澤句喷,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布镣典,位于F島的核電站,受9級(jí)特大地震影響唾琼,放射性物質(zhì)發(fā)生泄漏兄春。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一锡溯、第九天 我趴在偏房一處隱蔽的房頂上張望赶舆。 院中可真熱鬧,春花似錦祭饭、人聲如沸芜茵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽九串。三九已至,卻和暖如春悠咱,著一層夾襖步出監(jiān)牢的瞬間蒸辆,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工析既, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留躬贡,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓眼坏,卻偏偏與公主長得像拂玻,于是被迫代替她去往敵國和親酸些。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 譯者按:原文寫于2011年末檐蚜,雖然文中關(guān)于Python 3的一些說法可以說已經(jīng)不成立了魄懂,但是作為一篇面向從其他語言...
    EarlGrey閱讀 69,650評論 7 124
  • 在開發(fā)Python應(yīng)用程序的時(shí)候,系統(tǒng)安裝的Python3只有一個(gè)版本:3.4闯第。所有第三方的包都會(huì)被pip安裝到P...
    mank閱讀 872評論 0 1
  • 一市栗、使用虛擬環(huán)境的原因 在使用python開發(fā)的過程中,工程一多咳短,難免會(huì)碰到不同的工程依賴不同版本的庫的問題填帽;亦或...
    kaley_ma閱讀 12,138評論 5 15
  • (這是很早之前寫的但內(nèi)容沒有太過時(shí),發(fā)到這邊補(bǔ)全一下...)面向初學(xué)者介紹Python相關(guān)的一些工具咙好,以及可能遇到...
    jagttt閱讀 67,267評論 3 44
  • 第一次聽宋冬野的這首Demo時(shí)篡腌,就被它前奏里那靴子踩在雪地里咯吱咯吱的聲音深深地吸引住了,雖然僅僅只有8秒鐘勾效,但1...
    半個(gè)錯(cuò)別字閱讀 1,081評論 0 3