pyenv是個多版本python管理器,可以同時管理多個python版本共存,如pypy,miniconde等等
1 環境准備 安裝相關軟件和pyenv
1.1 安裝相關軟件
yum install -y readline readline-devel readline-static openssl openssl-devel openssl-static sqlite-devel bzip2-devel bzip2-libs
1.1 克隆pyenv
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
1.2 設置相關環境變量,使pyenv生效
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
exec $SHELL -l
2 安裝python
2.1 常用pyenv操作
pyenv install --list 查看可安裝的python版本
pyenv install 3.5.0 安裝python3.5.0
pyenv uninstall //卸載
2.2 更新pyenv
安裝完之后,需要更新一下才能看到已經安裝的版本
pyenv rehash
pyenv versions //查看已經安裝好的版本,帶*號的為當前使用的版本
2.3 選擇python版本
pyenv global 3.5.0 //設置全局版本,即系統使用的將是此版本
pyenv local 3.5.0 //當前目錄下的使用版本,有點類似virtualenv
補充:網絡問題導致安裝緩慢或無法進行
如anaconda之類大容量的版本,由於網絡的問題,總是連接中斷,安裝失敗。此時可以先從官方網站下載安裝包,然后放在~/.pyenv/cache文件夾中,然后在pyenv install 此版本,pyenv會自動先從此文件夾中搜索
3 python virtualenv創建純凈虛擬環境
雖然直接安裝pip安裝virtualenv也行,但是通過pyenv插件的形式安裝virtualenv的虛擬環境更加方便,因為之后的操作會比較方便。
3.1 安裝插件pyenv-virtualenv
參考文章:http://www.tiny-coder.com/home-article-51.html
pyenv-virtualenv插件安裝:項目主頁:https://github.com/yyuu/pyenv-virtualenv
pyenv virtualenv是pyenv的插件,為UNIX系統上的Python virtualenvs提供pyenv virtualenv命令。
3.2 安裝virtualenv
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
這個插件將安裝在主文件夾下的.pyenv文件夾中。
3.3 創建一個2.7.13的虛擬環境
pyenv virtualenv 2.7.13 py27
source ~/.bash_profile
這條命令在本機上創建了一個名為env271的python虛擬環境,這個環境的真實目錄位於:~/.pyenv/versions/
注意,命令中的 ‘2.7.13’ 必須是一個安裝前面步驟已經安裝好的python版本, 否則會出錯。
然后我們可以繼續通過 ‘pyenv versions’ 命令來查看當前的虛擬環境。
3.4 切換和使用新的python虛擬環境:
pyenv activate env271
這樣就能切換為這個版本的虛擬環境。通過輸入python查看現在版本,可以發現處於虛擬環境下了。
如果要切換回系統環境, 運行這個命令即可
pyenv deactivate
那如果要刪除這個虛擬環境呢? 答案簡單而且粗暴,只要直接刪除它所在的目錄就好:
rm -rf ~/.pyenv/versions/env271/
或者卸載:
pyenv uninstall env271
4 安裝ipython
centos7 已經帶有pip,不用安裝pip(在centos6 叫python-pip,在centos7 叫pip)
yum install python-pip
進入python環境后, 安裝ipython,若是python2+,需要指定ipython版本為ipython==1.2.1
pip install ipython
ps: 各個步驟的安裝腳本,這里的腳本安裝了python2.7.13和3.6.0,python安裝方式為先下載,在安裝
1 環境准備 安裝相關軟件和pyenv
#!/usr/bin/env bash
# 安裝相關軟件和pyenv
yum install -y readline readline-devel readline-static openssl openssl-devel openssl-static sqlite-devel bzip2-devel bzip2-libs # 克隆pyenv git clone https://github.com/yyuu/pyenv.git ~/.pyenv # 導出環境變量,使pyenv生效 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(pyenv init -)"' >> ~/.bash_profile exec $SHELL -l
2 安裝python
#!/usr/bin/env bash python2=2.7.13 python2_url="https://www.python.org/ftp/python/$python2/Python-${python2}.tar.xz" python3=3.6.0 python3_url="https://www.python.org/ftp/python/$python3/Python-${python3}.tar.xz" test -e ~/.pyenv/cache || mkdir -p ~/.pyenv/cache cd ~/.pyenv/cache if ! ls Python-${python2}.tar.xz &> /dev/null; then wget $python2_url fi pyenv install $python2 -v if ! ls Python-${python3}.tar.xz &> /dev/null; then wget $python3_url fi pyenv install $python3 -v git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile source ~/.bash_profile
3 python virtualenv創建純凈虛擬環境
#!/usr/bin/env bash python2=2.7.13 python3=3.6.0 pyenv virtualenv $python2 py27 pyenv virtualenv $python3 py35
echo 'alias py27="pyenv activate py27"' >> ~/.bash_profile echo 'alias py35="pyenv activate py35"' >> ~/.bash_profile echo 'alias pyd="pyenv deactivate"' >> ~/.bash_profile
source ~/.bash_profile
4 安裝ipython
#!/usr/bin/env bash
# 使用py27進入python環境后,進行以下操作。 # py27 yum install python-pip pip install ipython==1.2.1
#!/usr/bin/env bash
# 使用py35進入python環境后,進行以下操作。 # py35 yum install python-pip pip install ipython