---恢復內容開始---python
前言: git
安裝不一樣版本的 Python 版本不是一件容易的事 ,在不一樣的python版本之間來回切換更加困難,並且,多版本並存很是容易互相干擾,所以咱們須要一個名爲pyenv的工具,pyenv 是python 版本管理工具,可以進行全局的python版本切換,也能夠爲單個項目提供對應的python 版本,使用pyenv之後,能夠在服務器安裝不一樣的python版本,也能夠安裝不一樣的python實現。github
一、pyenv 的安裝:flask
咱們直接從github下載項目到本地,而後,分別執行如下命令進行安裝便可:bash
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$HOME/ .pyenv"' >> ~/.bash_profile $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile $ echo 'eval " $( pyenv init -) "' >> ~/.bash_profile
$ source ~/.bash_profile
二、pyenv 的使用:服務器
咱們經過pyenv的install 命令,能夠查看pyenv當前支持哪些python 版本:工具
$ pyenv install --list Available versions: 2.1.3 2.2.3
使用pyenv 安裝不一樣的 python 版本:學習
pyenv install -v 3.6.0 pyenv install v 2.7.13
查看當前系統中包含的python 版本:spa
$ pyenv versions system 3.6.0 * 3.6.5 (set by /home/ops/mypy/.pyenv/version)
經過pyenv global 選擇 不一樣的python 版本:插件
python global 3.6.0
若是想要刪除python 版本,使用uninstall 便可:
pyenv uninstall 2.7.1三、使用 virtualenv 管理不一樣的項目
virtualenv 自己是 一個獨立的項目 , 用以隔離不一樣項目的 工做環境 。
須要注意 pyenv 和 virtualenv 的區別 。 pyenv 用以管理不一樣的 Python 版本 , 例如,你的系統工做時使用 Python 2.7.13 , 學習時使用 Python 3.6.0 。 virtualenv 用以隔離項 目的工做環境,例如,項目 A 和項目 B 都是使用 Python 2.7.13 ,可是 ,項目 A 須要使用 Flask0.8 版本,項目 B 須要使用 Flask 0.9 版本 。 咱們只要組合 pyenv 和 virtualenv 這兩個工具,就可以構造 Python 和第三方庫的任意版本組合,擁有很好的靈活性,也避免了項目 之間 的相互干擾 。virtualenv 自己是一個獨 立 的 工具,用戶能夠不使用 pyenv 而單獨使用 virtualenv 。 可是 ,若是你使用了 pyenv ,就須要安裝 pyenv-virtualenv 插件,而不是經過 virtualenv 軟件使用 virtualenv 的功能 。
4. pyenv-virtualenv 的安裝
$ git clone https://github.com/yyuu/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
$ echo 'eval " $( pyenv virtualenv-init - ) "' >> ~/.bash_profile
$ source ~/.bash_profile
$ pyenv help virtualenv
五、pyenv-virtualenv 的使用:
$ pyenv virtualenv 2.7.13 first_project $ pyenv virtualenv 2.7.13 second_project
# 可使用 virtualenvs 子命令查看工做環境:
$ pyenv virtualenvs
# 建立完工做環境之後,能夠經過 activate 和 deactivate 子命令進入或退出 一個工做環
境 。 進入工做環境之後,左邊的提示符會顯示你當前所在的工做環境,以避免由於環境太多
致使操做錯誤 。 $ pyenv activate first_project
(first_project) $ pip install flask==0.8
(first_project) $ pyenv deactive
#若是想要刪除虛擬環境,則使用 :
pyenv virtualenv-delete first_project
---恢復內容結束---