今天一不當心又把ubuntu系統給完壞了,由於我把python3卸載了,而後就。。。好了,不廢話了,接下來就說一下如何在ubuntu下管理python的多個版本。我這裏使用的是一個叫pyenv的Python版本管理工具。python
系統環境:ubuntu14.04LTS,系統默認的python版本爲2.7,我這裏想要再安裝一個3.4.3版本。linux
- 再安裝python以前,咱們首先要安裝這個管理工具pyenv:
$ git clone git://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(pyenv init -)"' >> ~/.bashrc $ exec $SHELL -l
咱們還能夠經過下面這個命令來查看能夠安裝的python版本:git
$ pyenv install --list
- 若是咱們肯定要安裝python3.4.3的話,接下來咱們就能夠安裝python了,可是再安裝以前,咱們必需要安裝python所須要的依賴包,這個必需要安裝,安裝會失敗的:
$ sudo apt-get install libc6-dev gcc $ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
- 上面的依賴包搞定以後,咱們就能夠安裝python了:
$ pyenv install 3.4.3 -v
該命令會從github上下載python的源代碼,並解壓到/tmp目錄下,而後在/tmp中執行編譯工做。若依賴包沒有安裝,則會出現編譯錯誤,須要在安裝依賴包滯後從新執行該命令。github
- 安裝完成以後,須要使用以下命令對數據庫進行更新:
$ pyenv rehash
- 查看當前已經安裝的python版本
$ pyenv versions * system (set by /home/seisman/.pyenv/version) 3.4.3
其中星號表明是當前系統正在使用的python版本是系統自帶的。sql
- 設置全局的python版本
$ pyenv global 3.4.3 $ pyenv versions system * 3.4.3 (set by /home/seisman/.pyenv/version)
從上面,咱們能夠看出來當前的python版本已經變爲了3.4.3。也可使用pyenv local或pyenv shell臨時改變python的版本。shell
- 確認python版本
$ python Python 3.4.3 (default, Apr 1 2015, 19:10:43) [GCC 4.8.2] on linux Type "help", "copyright", "credits" or "license" for more information.
注意事項:數據庫
- 輸入python便可使用新版的python;
- 系統自帶的腳本會以/usr/bin/python的方式直接調用老版本的python,於是不會對系統腳本產生影響;
- 使用pip安裝第三方模塊時會安裝到~/.pyenv/versions/3.4.3下,不會和系統模塊發生衝突;
- 使用pip安裝模塊後,可能須要執行pyenv rehash更新數據庫。