安裝pyenv

什麼是pyenv

在開發環境中,我們往往需要開發多個項目,每個項目使用的python版本並不相同。而且我們Linux環境上自帶的python版本一般不修改,因爲這個python版本要爲Linux上的很多組件提供python環境.一旦修改我們系統自帶的版本,Linux上依賴此版本的組件會運行出錯。所以我們需要一個python版本控制工具,而pyenv就是這個一個版本控制工具。

安裝pyenv

github的方式安裝pyenv

~]# curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
需要注意的是上面命令能夠執行的前提是git已經安裝了。

pyenv安裝的路徑由變量PYENV_HOME指定,默認情況下PYTHON_HOME=${HOSE}/.pyenv,即家目錄下的隱藏目錄pyenv

配置環境變量

~]# vim .bash_profile
export PATH="/home/lirou/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
重讀配置文件
~]# . .bash_profile
可以看到pyenv具有的命令
安裝pyenv

pyenv基本管理

  • 更新pyenv
    ~]# pyenv update
  • 卸載pyenv
    ~]# pyenv uninstall

pyenv基本功能

安裝python解釋器

查看可以安裝的python版本
~]# pyenv install --list
安裝指定python版本
~]# pyenv install 3.5.2
所有已經安裝的版本都會放在pyenv安裝目錄下的versions目錄
安裝pyenv
查看已經安裝的python版本
~]# pyenv versions

管理python版本

設置全局python版本
~]# pyenv global PYTHON_VERSION
會修改全局的python版本,非常不建議使用此命令
此PYTHON_VERSION版本要已經通過pyenv install安裝了
設置當前目錄及當前子目錄的python版本
~]# pyenv local PYTHON_VERSION
此PYTHON_VERSION版本要已經通過pyenv install安裝了
查看當前版本號
~]# pyenv version

管理python虛擬環境

爲什麼我們已經有了python的版本控制,還需要一個python的虛擬環境呢?那是因爲python的項目管理是基於site,它不同於java開發的程序是基於project,一個項目有自己的依賴關係。python基於site的項目管理方式,會導致所有的項目共用模板。但事實是我們不同的相遇使用的模板版本是不同,比如一個項目使用的flask的版本是1.2,但另一個項目使用的flask版本是1.4。解決辦法是爲每一個項目創建一個虛擬環境,每個項目在自己的虛擬環境中安裝各自的版本。
基於3.5.2python版本創建一個虛擬環境
安裝依賴包:~]# yum -y install patch gcc make openssl-devel
~]# pyenv virtualenv 3.5.2 test_version
這條命令表明以3.5.2的版本創建一個虛擬版本,虛擬版本的名稱爲test_version
~]# pyenv versions
安裝pyenv
可以看到test_version這個版本,我們切換到此版本的方式和切換3.5.2一樣。
切換到創建的虛擬版本
~]# pyenv local test_version
安裝pyenv

pyenv是如何管理版本的

我們通過pyenv version查看當前目錄的版本號,實際查看的當前目錄下.python_version這個文件
安裝pyenv
pyenv如何管理不同環境的包
安裝pyenv

錯誤

在pyenv install 3.5.2是出現了錯誤,因爲這個命令實際要編譯python,所以依賴到一些組件,而主機是最小化安裝,這些組件沒有安裝。所以依賴的安裝包爲:
~]# yum -y install patch gcc make openssl-devel

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章