pyenv是一个Python多版本管理工具,它可以改变全局的Python版本,安装多个版本的Python,设置目录级别的Python版本,还能创建和管理virtual python environments 。所有的设置都是用户级别的操作,不需要sudo 命令。
pyenv通过系统修改环境变量来实现Python不同版本的切换,它在PATH的最前面插入了一个垫片路径(shims):~/.pyenv/shims:/usr/local/bin:/usr/bin:/bin。所有对 Python 可执行文件的查找都会首先被这个 shims 路径截获,从而使后方的系统路径失效。
1. 安装pyenv
1.1 git拉取pyenv代码
1 | git clone https://github.com/pyenv/pyenv.git ~/.pyenv |
1.2 修改配置文件
1 | echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile |
1.3 重新载入变量配置
1 | source ~/.bashrc |
1.4 验证安装
1 | pyenv versions |
2. 使用pyenv安装多版本Python
2.1 安装依赖包
在使用pyenv安装Python之前,需要安装相应的依赖包,否则在安装过程中会报错。
1 | yum install -y gcc* |
2.2 pyenv常用命令
查看本机安装 Python 版本
1 | pyenv versions |
查看可安装Python版本
1 | pyenv install -l |
python安装与卸载
1 | pyenv install 2.7.15 |
python切换
1 | pyenv global 2.7.15 |
查看所有pyenv支持命令
1 | pyenv commands |
2.3 安装过程中遇到的相关问题解决
2.3.1 安装Python过程慢
pyenv安装Python过程
1 | pyenv默认会从官网下载相应Python压缩包,放到/tmp目录下,然后在/tmp目录编译安装,安装在~/.pyenv/versions/下面。 |
解决下载安装慢的问题
1 | 因为pyenv默认会从Python官网下载压缩包,因为众所周知的原因,国内访问Python官网不稳定,因此在下载过程中会非常慢,解决该问题有两个办法: |
2.3.2 pip安装库timeout
pip安装库的时候,也会经常出现现在速度很慢或者timeout的状况,更换成国内镜像源即可解决问题
1 | 创建一个pip.conf文件 |