使用 pyenv 管理多版本 Python 环境及 virtualenv

沿途有光
沿途有光
发布时间:2026-10-14| 2人浏览过
原创

本文详细介绍如何使用 pyenv 在 Linux 环境下管理多个 Python 版本。通过安装 pyenv 插件、配置环境变量,实现不同 Python 版本的自由切换。同时结合 virtualenv 功能,演示如何创建、激活和删除特定版本的虚拟环境,解决多项目依赖冲突问题。

pyenv 简介与安装

随着同时开发的项目数量增加,开发者经常需要在不同版本的 Python 环境之间频繁切换。以往使用的 virtualenv 仅能管理单一 Python 版本下的第三方库,无法解决跨版本切换的需求。为此,引入 pyenv 工具来统一管理多个 Python 版本成为更优选择。

安装 pyenv

执行以下命令即可自动下载安装 pyenv 安装器:

自动安装 pyenv


$ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash

安装完成后,需修改用户主目录下的 ~/.bashrc 配置文件,将 pyenv 添加到系统 PATH 变量中。在文件中添加如下配置行:

配置环境变量


export PATH="/home/kongxx/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

保存修改后,执行 source 命令使环境变量立即生效。


$ .~/.bashrc

Python 版本管理

使用 pyenv 管理 Python 版本

首先,检查当前系统已安装及正在使用的 Python 版本。

查看已安装版本


$ pyenv versions
* system (set by /home/kongxx/.pyenv/version)

输出结果中,system 表示系统默认安装的 Python 包,星号(*)标记当前生效的 Python 环境。

查看当前可供安装的 Python 版本列表。

查询可安装版本


$ pyenv install -l
Available versions:
 2.1.3
 2.2.3
 2.3.7
 2.4
 2.4.1
...

指定安装特定版本的 Python。

安装指定版本


$ pyenv install 2.7.10
Downloading Python-2.7.10.tar.xz...
-> https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xz
Installing Python-2.7.10...
patching file ./Lib/site.py
Installed Python-2.7.10 to /home/kongxx/.pyenv/versions/2.7.10

$ pyenv install 3.2.1
...

安装完成后,再次查看已安装的 Python 版本列表以确认安装结果。


$ pyenv versions
* system (set by /home/kongxx/.pyenv/version)
 2.7.10
 3.2.1

切换并使用指定版本的 Python。

切换全局 Python 版本


$ pyenv global 3.2.1
$ python -V
Python 3.2.1

切换后,检查当前生效的 Python 版本是否已更新为目标版本。


$ pyenv version
3.2.1 (set by /home/kongxx/.pyenv/version)

$ pyenv versions
 system
 2.7.10
* 3.2.1 (set by /home/kongxx/.pyenv/version)

virtualenv 虚拟环境管理

使用 pyenv 管理 virtualenv 虚拟环境

创建一个新的 virtualenv 环境。

此处以 Python 3.2.1 版本为基础,创建一个名为 myenv 的虚拟环境。

创建虚拟环境


$ pyenv virtualenv 3.2.1 myenv

$ pyenv versions
 system
 2.7.10
* 3.2.1 (set by /home/kongxx/.pyenv/version)
 3.2.1/envs/myenv
 myenv

激活当前需要使用的 virtualenv 环境。

激活与停用环境


$ pyenv activate myenv

$ pyenv versions
 system
 2.7.10
 3.2.1
 3.2.1/envs/myenv
* myenv (set by PYENV_VERSION environment variable)

停用当前正在使用的 virtualenv 环境。


$ pyenv deactivate

删除不再需要的 virtualenv 环境。

删除虚拟环境


$ pyenv virtualenv-delete myenv

以上即为 pyenv 管理多版本 Python 及虚拟环境的完整操作流程,希望能为读者的开发工作提供参考。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。