17370845950

使用 poetry 管理 Python 项目依赖
Poetry 提供依赖、虚拟环境和打包一体化管理。通过 curl 安装后,用 poetry new 创建项目,poetry add 添加依赖,区分主与开发环境,poetry install 安装依赖,poetry build 打包,poetry publish 发布,全程自动化且版本一致。

使用 Poetry 管理 Python 项目依赖能让你更高效地创建、管理和打包项目。它集成了依赖管理、虚拟环境管理和发布功能,相比传统的 pip + requirements.txt 更现代化且体验更流畅。

安装 Poetry

在开始前,需要先安装 Poetry。推荐使用官方推荐的安装方式:

curl -sSL https://install.python-poetry.org | python3 -

安装完成后,将 Poetry 添加到系统路径(通常会提示你添加到 shell 配置中),然后验证是否安装成功:

poetry --version

创建新项目

使用以下命令创建一个新的 Python 项目:

poetry new my-project

这会生成一个结构清晰的项目目录,包含源码目录、测试目录和 pyproject.toml 配置文件。

如果你已在现有项目中,可以进入项目根目录并运行:

poetry init

该命令会引导你填写项目信息,并生成 pyproject.toml 文件。

管理依赖

Poetry 区分主依赖和开发依赖。常用命令如下:

  • 添加主依赖(如 Flask):poetry add flask
  • 添加开发依赖(如 pytest):poetry add pytest --group dev
  • 安装所有依赖(包括开发依赖):poetry install
  • 仅安装主依赖(生产环境):poetry install --only main

依赖信息会自动写入 pyproject.tomlpoetry.lock 文件。lock 文件确保所有环境依赖版本一致。

使用虚拟环境

Poetry 默认会为项目创建独立的虚拟环境。你可以通过以下命令查看或管理环境:

  • 查看当前环境:poetry env info
  • 进入虚拟环境:poetry shell
  • 在环境中执行命令:poetry run python app.py
  • 指定 Python 版本:poetry env use python3.11

这样无需手动激活虚拟环境,Poetry 会自动关联正确的解释器。

构建与发布

当项目准备发布时,可使用以下命令打包:

poetry build

这会生成 dist/ 目录下的 .whl.tar.gz 文件。

如果要发布到 PyPI:

poetry publish

也可以配置私有仓库或测试源。

基本上就这些。Poetry 让依赖管理变得简单可靠,特别适合现代 Python 项目的全生命周期管理。