Pyenv 多版本 Python 环境管理与实战指南
在开发过程中,不同项目往往需要不同的 Python 版本。pyenv 是一个轻量级的版本管理工具,能让我们在同一台机器上轻松切换和管理多个 Python 环境。下面以 Linux 系统为例,介绍从安装到虚拟环境配置的完整流程。
1. 安装 pyenv 核心
首先需要获取 pyenv 源码并配置环境变量。推荐使用 git 克隆到用户主目录。
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
接着将初始化脚本添加到 shell 配置文件中。根据系统不同,配置文件有所区别:
Ubuntu / Debian
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
eval "$(pyenv init -)" >> ~/.bashrc
CentOS 7
echo 'eval "$(pyenv init --path)"' >> ~/.bash_profile
修改完成后,重新加载 shell 配置即可生效:
source ~/.bashrc
exec $SHELL
如果不想立即重启终端,也可以直接关闭当前窗口新建一个会话。
2. 准备编译依赖
编译 Python 解释器需要系统底层的支持库。如果缺少这些依赖,安装过程会报错。
Ubuntu 系统
sudo apt-get install -y build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl llvm \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
注意:较新的 Python 版本(如 3.7+)可能需要 liblzma-dev,否则解压模块可能无法正常工作。
CentOS 7 系统
yum install -y gcc gcc-c++ make zlib-devel bzip2-devel openssl-devel \
ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel \
libpcap-devel xz-devel patch libffi-devel
3. 安装 Python 版本
查看可用版本列表:
pyenv install --list
执行安装命令时加上 -v 参数可以查看详细日志,方便排查问题:
pyenv install 3.7.1 -v

