python3多版本管理和虛擬環(huán)境配置

前言

python 版本比較多,2 和 3 相差非常大皇忿,很多項(xiàng)目需要跑在同一臺(tái)服務(wù)器上谴仙,那就必須有隔離環(huán)境烧栋。比如有的項(xiàng)目使用 python 3.5,有的項(xiàng)目使用 python 3.7缎浇,此時(shí)我們可以借助 pyenv 幫助我們完美的隔離環(huán)境,讓多個(gè)版本的 python 沒有任何沖突,完美共存陨帆。


環(huán)境準(zhǔn)備


安裝環(huán)境

1. 安裝git

ubuntu安裝:
sudo apt-get install git
centos安裝:
sudo yum install git

2. 安裝pyenv

安裝pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv

配置環(huán)境變量


$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc
$ exec $SHELL

3. 安裝 pyenv-virtualenv

安裝 pyenv-virtualenv
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv

配置環(huán)境變量

$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
$ exec $SHELL

使用pyenv管理版本

  • 列出所有能安裝的版本
    pyenv install --list

  • 安裝python指定版本
    pyenv install 3.7.3
    說(shuō)明:如果安裝python時(shí)提示Build failed,參考https://github.com/pyenv/pyenv/wiki
    ubuntu執(zhí)行以下命令

    $ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
    libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev  \
    libxml2-dev libxmlsec1-dev libffi-dev
    

    CentOS執(zhí)行以下命令

    $ sudo yum install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel
    
    
  • 列出pyenv可用的所有Python版本
    pyenv versions

  • 設(shè)置全局python版本
    pyenv global 3.7.3

  • 設(shè)置當(dāng)前工作目錄的特定python版本
    pyenv local 3.7.3

  • 查看當(dāng)前正在使用的版本
    pyenv version

  • 查看python安裝路徑
    pyenv which python

  • 為pyenv(即采蚀,~/.pyenv/versions//bin/)已知的所有Python二進(jìn)制文件安裝填充程序 疲牵。在安裝新版本的Python之后運(yùn)行此命令,或安裝提供二進(jìn)制文件的軟件包榆鼠。
    pyenv rehash


創(chuàng)建虛擬環(huán)境

  1. 創(chuàng)建一個(gè)虛擬環(huán)境纲爸,執(zhí)行以下命令:
    pyenv virtualenv 3.7.3 env_demo(虛擬環(huán)境名稱)
$ pyenv virtualenv 3.7.3 env_demo
Looking in links: /tmp/tmpkn_yl6dx
Requirement already satisfied: setuptools in   /home/test/projects/pyenv/versions/3.7.3/envs/env_demo/lib/python3.7/site-  packages (40.8.0)
Requirement already satisfied: pip in   /home/test/projects/pyenv/versions/3.7.3/envs/env_demo/lib/python3.7/site-  packages (19.0.3)

類似這樣即創(chuàng)建成功

  1. 激活虛擬環(huán)境
    pyenv activate env_demo

你會(huì)發(fā)現(xiàn),在你的終端里面璧眠,多了一個(gè)類似于 (env-demo)即激活成功

  1. 退出虛擬環(huán)境
    pyenv deactivate

使用python3自帶的虛擬環(huán)境venv

  1. 創(chuàng)建虛擬環(huán)境
$ python -m venv /tem/venv_demo
  1. 激活該虛擬環(huán)境
$ cd /tem/venv_demo/bin # 進(jìn)入虛擬環(huán)境所在路徑
$ source activate  # 激活虛擬環(huán)境

$ deactivate # 退出虛擬環(huán)境
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末缩焦,一起剝皮案震驚了整個(gè)濱河市读虏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌袁滥,老刑警劉巖盖桥,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異题翻,居然都是意外死亡揩徊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門嵌赠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)塑荒,“玉大人,你說(shuō)我怎么就攤上這事姜挺〕菟埃” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵炊豪,是天一觀的道長(zhǎng)凌箕。 經(jīng)常有香客問我,道長(zhǎng)词渤,這世上最難降的妖魔是什么牵舱? 我笑而不...
    開封第一講書人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮缺虐,結(jié)果婚禮上芜壁,老公的妹妹穿的比我還像新娘。我一直安慰自己高氮,他們只是感情好慧妄,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著纫溃,像睡著了一般腰涧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上紊浩,一...
    開封第一講書人閱讀 51,631評(píng)論 1 305
  • 那天窖铡,我揣著相機(jī)與錄音,去河邊找鬼坊谁。 笑死费彼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的口芍。 我是一名探鬼主播箍铲,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鬓椭!你這毒婦竟也來(lái)了颠猴?” 一聲冷哼從身側(cè)響起关划,我...
    開封第一講書人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎翘瓮,沒想到半個(gè)月后贮折,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡资盅,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年调榄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片呵扛。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡每庆,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出今穿,到底是詐尸還是另有隱情缤灵,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布荣赶,位于F島的核電站凤价,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏拔创。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一富蓄、第九天 我趴在偏房一處隱蔽的房頂上張望剩燥。 院中可真熱鬧,春花似錦立倍、人聲如沸灭红。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)变擒。三九已至,卻和暖如春寝志,著一層夾襖步出監(jiān)牢的瞬間娇斑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工材部, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留毫缆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓乐导,卻偏偏與公主長(zhǎng)得像苦丁,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子物臂,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

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