python多版本管理工具之pyenv
·
pyenv 是一个用于管理多个 Python 版本的工具,允许用户在同一台机器上轻松安装、切换和隔离不同版本的 Python 解释器。它特别适合需要同时处理多个项目的开发者(例如,不同项目依赖不同 Python 版本的情况)。以下是 pyenv 的详细指南:
本文基于Ubuntu 22.04版本进行安装,以下是具体的步骤
1. 首先安装 pyenv 的依赖包
sudo apt update
sudo apt install -y make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
2. 使用 curl 安装 pyenv
curl https://pyenv.run | bash
以上安装pyenv的方式会自动调用github上的地址进行下载并安装,但由于国内的网络限制,导致安装会受阻,因此可以使用如下方式
3. 安装pyenv——国内可使用方式
git clone https://gitee.com/mirrors/pyenv.git ~/.pyenv
4. 配置环境变量
a. 添加到bashrc文件中
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init - bash)"' >> ~/.bashrc
b. 添加到profile文件中
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.profile
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.profile
echo 'eval "$(pyenv init - bash)"' >> ~/.profile
5. 重新加载配置文件
exec "$SHELL"
基于以上步骤,就可以基于pyenv管理python版本了
6. 常用命令
| 命令 | 说明 |
|---|---|
pyenv install --list | 列出所有可安装的 Python 版本 |
pyenv install 3.9.6 | 安装 Python 3.9.6 |
pyenv versions | 查看已安装的版本(* 表示当前激活版本) |
pyenv global 3.9.6 | 设置全局默认 Python 版本 |
pyenv local 3.8.12 | 在当前目录设置局部版本(生成 .python-version 文件) |
pyenv shell 3.7.13 | 在当前 Shell 会话临时使用指定版本 |
pyenv uninstall 3.6.15 | 卸载某个 Python 版本 |
需要注意的是,在使用pyenv install 3.9.6进行安装时,由于默认会从python官方镜像下载,会很慢,如下图所示:

因此可以使用如下方式进行python安装包的前置下载:
wget https://registry.npmmirror.com/-/binary/python/3.9.6/Python-3.9.6.tar.xz -P ~/.pyenv/cache/
pyenv install 3.9.6
如上所示,wget会将需要使用的python版本提前下载到pyenv的cache目录下,从而避免了install时进行下载,之后再执行pyenv install 3.9.6时,pyenv会直接从cache中读取到已经下载到的python安装包,从而加快了安装速度。
其效果如下所示:

可以使用https://registry.npmmirror.com/-/binary/python/3.9.0/Python-3.9.0.tar.xz 进行下载,把3.9.0替换为所需要的python版本即可!
7. 查看已安装的版本
pyenv versions

如上所示,*前的3.12.8便是当前激活的版本
其他的命令大家可以探索了!
更多推荐
所有评论(0)