经常遇到这样的情况:
- 系统自带的 Python 是 2.6,自己需要 Python 2.7 中的某些特性;
- 系统自带的 Python 是 2.x,自己需要 Python 3.x;
此时需要在系统中安装多个 Python,但又不能影响系统自带的 Python,即需要实现 Python 的多版本共存。pyenv 就是这样一个 Python 版本管理器。
安装 pyenv
在终端执行如下命令以安装 pyenv 及其插件:
1
|
$ curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
|
如果提示没有安装git,
1
|
$ yum -y install git
|
安装完成后,根据提示将如下语句加入到 ~/.bashrc
中:
1
2
3
4
|
export PYENV_ROOT=“$HOME/.pyenv”
export PATH=“$PYENV_ROOT/bin:$PATH“
eval “$(pyenv init -)“
eval “$(pyenv virtualenv-init -)“ # 这句可以不加
|
然后重启终端即可。
安装 Python
查看可安装的版本
1
|
$ pyenv install –list
|
该命令会列出可以用 pyenv 安装的 Python 版本。列表很长,选择自己需要的,比如我选择最新的3.6.2版本。
其中 如3.6.2 这种只有版本号的是 Python 官方版本,其他的形如 anaconda2-4.1.0
这种既有名称又有版本后的属于 “衍生版” 或发行版。
安装 Python 的依赖包
在编译 Python 过程中会依赖一些其他库文件,因而需要首先安装这些库文件,已知的一些需要预先安装的库如下。
sudo yum install readline readline-devel readline-static
sudo yum install openssl openssl-devel openssl-static
sudo yum install sqlite-devel
sudo yum install bzip2-devel bzip2-libs
sudo yum install gcc #如果在安装python版本的时候出错,可以试试这条
安装指定版本
用户可以使用 pyenv install
安装指定版本的 python,我安装的是3.6.2。
1
|
$ pyenv install 3.6.2 -v
|
安装过程中,若出现编译错误,通常是由于依赖包未满足,需要在安装依赖包后重新执行该命令。
更新数据库
在安装 Python 或者其他带有可执行文件的模块之后,需要对数据库进行更新:
1
|
$ pyenv rehash
|
查看当前已安装的 python 版本
1
|
$ pyenv versions
|
其中的星号表示当前正在使用的是系统自带的 python。
设置全局的 python 版本
1
|
$ pyenv global 3.6.2
|
这样就安装完成了,其他就是python的操作了,不细说了。
未经允许不得转载:陈丹的博客 » CentOS 7 安装python多版本pyenv