安装pyenv
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装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 update - 卸载pyenv
~]# pyenv uninstall
pyenv基本功能
安装python解释器
查看可以安装的python版本
~]# pyenv install --list
安装指定python版本
~]# pyenv install 3.5.2
所有已经安装的版本都会放在pyenv安装目录下的versions目录
查看已经安装的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
可以看到test_version这个版本,我们切换到此版本的方式和切换3.5.2一样。
切换到创建的虚拟版本
~]# pyenv local test_version
pyenv是如何管理版本的
我们通过pyenv version查看当前目录的版本号,实际查看的当前目录下.python_version这个文件
pyenv如何管理不同环境的包
错误
在pyenv install 3.5.2是出现了错误,因为这个命令实际要编译python,所以依赖到一些组件,而主机是最小化安装,这些组件没有安装。所以依赖的安装包为:
~]# yum -y install patch gcc make openssl-devel
以上是关于安装pyenv的主要内容,如果未能解决你的问题,请参考以下文章