跳到主要内容

虚拟环境与依赖管理

每个项目使用独立的虚拟环境,是 Python 开发的最佳实践,可避免依赖冲突与系统污染。

venv 创建与激活

venv 是标准库自带的轻量虚拟环境工具。

python -m venv .venv
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
deactivate # 退出

激活后 pythonpip 指向隔离的目录,使用 which python 可确认。

pip 常用命令

pip install requests # 安装
pip install requests==2.31.0 # 固定版本
pip install -r requirements.txt # 按文件安装
pip freeze > requirements.txt # 导出当前环境
pip uninstall requests

requirements.txt

最朴素的依赖声明,适合部署场景。推荐生产环境用 == 锁版本,并配合 pip-tools 生成 requirements.inrequirements.txt

pyproject.toml

PEP 621 标准化了项目元数据与依赖声明,几乎所有现代构建工具都基于它。

[project]
name = "myapp"
version = "0.1.0"
dependencies = [
"requests>=2.31",
]

poetry 与 uv 简介

  • poetry:依赖解析、虚拟环境、打包发布一体化,命令如 poetry addpoetry install
  • uv:Rust 实现的极速工具,兼容 pip/pyproject.toml,在解析与安装速度上大幅领先

两者均使用 pyproject.toml,迁移成本低。选择取决于团队对速度与生态的偏好。