虚拟环境和包管理
# 1 虚拟环境
python 的默认依赖管理是按系统来的,而不是按项目,在默认情况下,一个系统同一个包只能安装一个版本,再安装第二个版本时就会覆盖前一个版本。 因此在实际开发时,往往需要使用虚拟环境来实现不同的项目间依赖隔离。
| 工具 | 管理 Python 解释器 | 管理 Python 包 | 管理非 Python 依赖 | 场景 |
|---|---|---|---|---|
| venv | ❌ | ✅ | ❌ | 简单项目、轻量隔离 |
| uv | ✅ | ✅ | ❌ | 纯 Python 项目 |
| conda | ✅ | ✅ | ✅ | AI、深度学习、科学计算 |
# 1.1 venv - 自带、轻量
venv 是 Python 自带的虚拟环境工具,不需要额外安装。
# 1.1.1 创建虚拟环境并激活
cd project_path
# 创建一个环境,建议叫.venv;
python -m venv .venv
# 执行后会在当前目录创建对应环境名的目录,即./.venv
# 1.1.2 激活环境
# unix or macOS
source .venv/bin/activate
# windows
tutorial-env\Scripts\activate
# 1.1.3 停用环境
deactivate
在激活环境后,再进行 pip 操作,作用域就仅限于在当前虚拟环境
# 1.2 uv - 适合纯 Pytho 项目的现代包管理
uv 是一个现代 Python 包管理工具,主要管理 Python 生态依赖,使用 uv 不需要提前安装 Python 解释器。
# 1.3 conda - 适合 “Python + 非 Python 依赖” 的复杂环境
# 1.3.1 安装 conda

Note
如无特殊需求,安装 Miniconda 即可,无需安装 Anaconda
- https://www.anaconda.com/download
- 下载安装
Miniconda - 安装好后,在终端即能调用 conda 命令:
conda env list
# 1.3.2 创建 conda 虚拟环境
conda create --name {环境名称} python={python版本号}
# conda create --name langchain1.2 python=3.13.12
# 1.3.3 常用命令
# 查看ancoda虚拟环境列表
conda env list
# 初始化虚拟环境;让 Shell 具备管理和切换 Conda 环境的能力。它通常只需要执行一次。
conda init
# 切换环境
conda activate {环境名称}
# conda activate langchain1.2
# 1.3.4 conda 依赖包操作命令
# 最新版
conda install {包名}
# 指定版本
conda install {包名}={版本号}
# 更新包
conda update {包名}
# 卸载包
conda uninstall {包名}
# 查看已安装包
conda list
# 2 pip - 包管理
# 安装最新版novas
python -m pip install novas
# 安装2.6.0版本的requests
python -m pip install requests==2.6.0
# 更新requests到最新版本
python -m pip install --upgrade requests
# 卸载requests
python -m pip uninstall requests
# 显示requests的信息
python -m pip show requests
# 显示所有在虚拟环境中安装的包
python -m pip list
# 将已安装包列表文本写入requirements.txt文件
python -m pip freeze > requirements.txt
# 安装所有必需的包,类似于npm i
python -m pip install -r requirements.txt
# 2.1 保存依赖
pip freeze > requirements.txt
执行后,会将当前环境的依赖包版本信息写入 requirements.txt 文件中
# 2.2 安装依赖
从另一台服务器拉去代码后,需要以下操作:
- 创建虚拟环境并激活
python -m venv .venv
source .venv/bin/activate
- 安装依赖
pip install -r requirements.txt
上次更新: 2026/11/02, 18:47:13