問題:
1谍婉、Python解釋器版本混亂, 2和3差別巨大, 而且細(xì)分版本也不盡相同, 難以選擇和管理.
2瘦陈、不同Linux發(fā)行版自帶Python不同, 如ubuntu16自帶2.7和3.5版本, 其中系統(tǒng)許多組件依賴于自帶解釋器, 一旦刪除或者更改都可能會(huì)造成系統(tǒng)出問題.
3、不同的Python解釋器軟件包管理也是問題, 如pip和ipython等必備包組件, 而且在項(xiàng)目開發(fā)中如何保證不同的包環(huán)境互不干擾也是一個(gè)問題.
那么有沒有一個(gè)解決辦法能在管理不同解釋器版本的同時(shí)控制不同的包環(huán)境呢? 有的, 就是pyenv.
pyenv是一個(gè)forked自ruby社區(qū)的簡單、遵循UNIX哲學(xué)的Python環(huán)境管理工具,
它可以輕松切換全局解釋器版本, 同時(shí)結(jié)合vitualenv插件可以方便的管理對(duì)應(yīng)的包源.
各版本下pyenv安裝方式:
sudo apt install git vim curl
ubuntu18.04.4版本下:
在 官網(wǎng):https://github.com/pyenv-installer下有安裝文檔
pyenv-installer安裝:(個(gè)人覺得看網(wǎng)絡(luò))
創(chuàng)建Python管理用戶然后切換到相應(yīng)用戶下登陸安裝pyenv:pyenv-install 是一個(gè)官方的安裝腳本
$ sudo curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
在python用戶的~/.bash_profile中追加:
export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
$ source ~/.bash_profile
centos7.0及以上版本:
官網(wǎng)地址:
https://github.com/pyenv/pyenv
git安裝:
$ yum install git -y
安裝Python依賴包:
$ yum install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel libffi-devel -y
安裝pyenv包:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
設(shè)置環(huán)境變量:
vim ~/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
#source ~/.bashrc
即是啟動(dòng)語句,重啟系統(tǒng)執(zhí)行這條語句
exec bash
在python用戶的~/.bash_profile中追加:
export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
$ source ~/.bash_profile
使用pyenv-installer這種方式安裝成功的已經(jīng)安裝了virtualenv可以直接使用
使用:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
安裝的不帶virtualenv需要自己安裝
自己安裝方法:
我記得如何安裝不成功用下面這種方式可以解決連接失敗問題:
pyenv-install 是一個(gè)官方的安裝腳本
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
如果curl時(shí)候出現(xiàn)"curl:(35)SSL connect error",是nss版本低的問題汗捡,更新他,可能需要配置一個(gè)教新的yum源
\
wangqd@wangqd:/home$ pyenv install 3.7.3 -v
如果你覺得服務(wù)器上面下載慢你可以直接輸入:
https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz下載完畢后上次到服務(wù)器上直接在當(dāng)前目錄下執(zhí)行:pyenv install 3.7.3 -v就行