4.4 声明依赖

原文链接: https://docs.astral.sh/uv/pip/dependencies/

4.4 声明依赖

最佳实践是在静态文件中声明依赖,而不是通过临时安装来修改环境。依赖定义好之后,可以锁定它们,以创建一致且可复现的环境。

使用 pyproject.toml

pyproject.toml 文件是定义项目配置的 Python 标准。

要在 pyproject.toml 文件中定义项目依赖:

1
2
3
4
5
6
# pyproject.toml
[project]
dependencies = [
  "httpx",
  "ruff>=0.3.0"
]

要在 pyproject.toml 文件中定义可选依赖:

1
2
3
4
5
6
# pyproject.toml
[project.optional-dependencies]
cli = [
  "rich",
  "click",
]

每个键都定义一个 “extra”,可以用 --extra 和 --all-extras 标志或 package[<extra>] 语法安装。更多细节请参阅安装包文档。

关于 pyproject.toml 入门的更多细节,请参阅官方的 pyproject.toml 指南。

使用 requirements.in

使用轻量的 requirements 文件格式声明项目依赖也很常见。每个 requirement 独占一行。通常该文件命名为 requirements.in,以便与用于锁定依赖的 requirements.txt 区分。

要在 requirements.in 文件中定义依赖:

# requirements.in
httpx
ruff>=0.3.0

该格式不支持可选依赖组。

最后修改 September 25, 2026: 更新 (221c74c33)