【python -m venv、pyenv 和 conda 的关系、使用场景及常用命令】

python -m venv、pyenv 和 conda 的关系、使用场景及常用命令。

概念及关系
python -m venv:Python 标准库自带的虚拟环境创建工具,用于创建轻量级的虚拟环境。它只能管理虚拟环境,无法管理 Python 版本。
pyenv:Python 版本管理工具,能让你在不同 Python 版本间轻松切换。可以结合 virtualenv(与 venv 类似的虚拟环境工具)来管理虚拟环境。
conda:一个跨平台的包管理和环境管理系统,既可以管理 Python 版本,也能管理虚拟环境,还能管理非 Python 包(如 R 语言包)。
重量上,python -m venv 最轻量,仅提供基本虚拟环境功能;pyenv 主要专注于版本管理;conda 功能最全面,重量也相对较大。

常用命令整理
python -m venv

# 创建虚拟环境
python -m venv .venv

# 激活虚拟环境
# Windows
.venv\Scripts\activate
# Linux/MacOS
source .venv/bin/activate

# 退出虚拟环境
deactivate

pyenv

# 查看 pyenv 版本
pyenv --version

# 列出可安装的 Python 版本
pyenv install --list

# 安装指定 Python 版本
pyenv install 3.9.7

# 列出已安装的 Python 版本
pyenv versions

# 设置全局 Python 版本
pyenv global 3.9.7

# 设置当前目录局部 Python 版本
pyenv local 3.9.7

# 结合 virtualenv 创建虚拟环境
pyenv virtualenv 3.9.7 myenv

# 列出所有虚拟环境
pyenv virtualenvs

# 激活虚拟环境
pyenv activate myenv

# 退出虚拟环境
pyenv deactivate

conda

# 查看 conda 版本
conda --version

# 创建新环境
conda create --name myenv python=3.9

# 列出所有环境
conda env list

# 激活环境
conda activate myenv

# 退出环境
conda deactivate

# 安装包
conda install numpy

# 卸载包
conda remove numpy

# 更新 conda
conda update conda

使用场景建议
python -m venv:适合简单项目,对虚拟环境功能需求不复杂,且希望使用 Python 标准库自带工具的场景。
pyenv:适合需要在不同 Python 版本间频繁切换,且对 Python 版本管理有较高要求的开发者。
conda:适合数据科学、机器学习等领域,需要管理多种依赖包(包括非 Python 包),以及跨平台开发的场景。

posted @ 2025-05-24 15:29  十三山入秋  阅读(278)  评论(0)    收藏  举报