Python版本+虛擬環(huán)境管理:Conda+Pipenv

前言:一般情況下,為了方便管理轿塔,通常一個python項目搭配一個虛擬環(huán)境,對應一個python版本。但是有時候勾缭,我們需要對項目的python版本升級揍障,框架版本升級,這樣不可避免的就需要兩套環(huán)境俩由,因為升級毒嫡、修改、測試與現(xiàn)有系統(tǒng)的功能開發(fā)肯定是齊頭并進的幻梯。那么隨意切換環(huán)境就很有必要了兜畸。
pipenv可以通過Pipfile文件方便的管理項目所需要的安裝包,但它只能為一個項目創(chuàng)建一個虛擬環(huán)境碘梢。conda可以任意創(chuàng)建環(huán)境咬摇,但在項目包管理方面卻沒有那么方便。那如果將conda和pipenv結合起來煞躬,使用各自的優(yōu)勢肛鹏,那么就可以很方便地為一個項目創(chuàng)建多個環(huán)境了,可隨意切換汰翠,而不會出現(xiàn)覆蓋的情況龄坪。

1. 使用conda create 為項目創(chuàng)建不同python版本的環(huán)境

conda create -n env1_name python=3.6
conda create -n env2_name python=3.10

2.設置項目的虛擬環(huán)境目錄

cd proj_name
# 激活虛擬環(huán)境
conda activate env1_name
# 設置WORKON_HOME昭雌,將其設置成env1_name的虛擬目錄
conda env config vars set WORKON_HOME=/path/to/env1_name_virtual_path\

i.e: 
   conda env config vars set WORKON_HOME=/home/shelly/anaconda3/envs/env1_name

#設置完成之后复唤,需要重新激活環(huán)境才生效
conda activate env1_name

3.設置PIPFILE(optional)

默認是項目下的PIPFILE。如果要測試不同的python版本烛卧,然后里面的包的版本也各不相同佛纫,可以設置不同Pipfile文件。如果Pipfile不是在當前項目的目錄下总放,設置到其它目錄呈宇,則pipenv的當前目錄也會改變,變成Pipfile所在的目錄.

i.e: 比如之前是Python3.6局雄,Django2.2,現(xiàn)在項目需要升級到Python3.10甥啄,Django3.2,為保證兩個版本在一段時間內可以同時運行【娲睿可以在項目下再創(chuàng)建一個Pipefile_3.10的文件蜈漓,copyPipfile,改變一些pakg的版本宫盔。然後在另外一個虛擬環(huán)境中融虽,將PIPEFILE的環(huán)境變量設置成Pipfile_3.10.這樣,在pipenv install的時候灼芭,它會重新生成Pipfile_3.10.lock的lockfile文件

conda env config vars set PIPENV_PIPFILE=/mnt/d/H.H/private_code/envtest/Pipfile

設置完環(huán)境變量后有额,記得需要重新激活環(huán)境生效:conda activate venv_name

4、在虛擬環(huán)境下安裝pipenv

conda install pipenv

5.再env1_name虛擬環(huán)境下,創(chuàng)建pipenv的虛擬環(huán)境

pipenv install --python /home/shelly/anaconda3/envs/v2_env/bin/python

在使用pipenv install 之前巍佑,可以使用pipenv --venv確認一下虛擬環(huán)境茴迁,如果沒設置,確認一下WORKON_HOME環(huán)境變量萤衰。使用--python指定python解釋器笋熬。

不要用sudo,sudo會使虛擬路徑又變到系統(tǒng)的虛擬路徑去

6.進入虛擬環(huán)境

先確保已激活conda的虛擬環(huán)境
然後在conda的虛擬環(huán)境下腻菇,使用pipenv shell 進入pipenv的虛擬環(huán)境

pipenv shell
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末胳螟,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子筹吐,更是在濱河造成了極大的恐慌糖耸,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丘薛,死亡現(xiàn)場離奇詭異嘉竟,居然都是意外死亡,警方通過查閱死者的電腦和手機洋侨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門舍扰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人希坚,你說我怎么就攤上這事边苹。” “怎么了裁僧?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵个束,是天一觀的道長。 經常有香客問我聊疲,道長茬底,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任获洲,我火速辦了婚禮阱表,結果婚禮上,老公的妹妹穿的比我還像新娘贡珊。我一直安慰自己最爬,他們只是感情好,可當我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布飞崖。 她就那樣靜靜地躺著烂叔,像睡著了一般。 火紅的嫁衣襯著肌膚如雪固歪。 梳的紋絲不亂的頭發(fā)上蒜鸡,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天胯努,我揣著相機與錄音,去河邊找鬼逢防。 笑死叶沛,一個胖子當著我的面吹牛,可吹牛的內容都是我干的忘朝。 我是一名探鬼主播灰署,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼局嘁!你這毒婦竟也來了溉箕?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤悦昵,失蹤者是張志新(化名)和其女友劉穎肴茄,沒想到半個月后,有當地人在樹林里發(fā)現(xiàn)了一具尸體但指,經...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡寡痰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了棋凳。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拦坠。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖剩岳,靈堂內的尸體忽然破棺而出贞滨,到底是詐尸還是另有隱情,我是刑警寧澤卢肃,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布疲迂,位于F島的核電站,受9級特大地震影響莫湘,放射性物質發(fā)生泄漏。R本人自食惡果不足惜郑气,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一幅垮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧尾组,春花似錦忙芒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至跨跨,卻和暖如春潮峦,著一層夾襖步出監(jiān)牢的瞬間囱皿,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工忱嘹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留嘱腥,地道東北人。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓拘悦,卻偏偏與公主長得像齿兔,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子础米,可洞房花燭夜當晚...
    茶點故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內容