Poetry

image

1- Poetry

Poetry 是一个用于 Python 项目依赖管理和打包的工具,旨在简化开发者的工作流程。以下是关于 Poetry 的详细介绍,包括安装步骤、使用方法以及与其他工具的比较。

1.1- 什么是 Poetry

Poetry 允许开发者声明项目所依赖的库,并为其管理(安装/更新)这些库。它提供了一个锁定文件(poetry.lock),以确保可重复的安装,并可以为项目构建分发版本。

  • 与传统的 pipvirtualenv 相比,Poetry 提供了更为完善的依赖管理功能,尤其是在处理依赖冲突时表现更佳 。

1.2- 安装 Poetry

1.2.1- 系统要求

  • Python 版本:3.8 及以上

1.2.2- 安装方式

1.2.2.1- 使用 PowerShell(Windows)

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -

1.2.2.2- 使用 curl(Linux/macOS/WSL)

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

1.2.2.3- 使用 pipx(推荐)

pip install pipx
pipx install poetry

安装完成后,可以通过以下命令验证是否安装成功:

poetry -V

1.3- 创建和管理项目

1.3.1- 创建新项目

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

poetry new demo-project

这将生成一个包含基本文件结构的项目目录。

1.3.2- 初始化现有项目

如果你在一个已有的项目中使用 Poetry,可以执行:

poetry init

这将创建一个 pyproject.toml 文件,用于管理项目依赖。

1.3.3- 安装依赖

在项目目录下,使用以下命令安装依赖:

poetry install

这将根据 pyproject.toml 文件中的依赖信息安装所有必要的包。

1.4- 使用虚拟环境

Poetry 会自动为每个项目创建一个虚拟环境。你可以使用以下命令在虚拟环境中运行命令:

poetry run <command>

例如,查看已安装的包:

poetry run pip list

如果你想直接进入虚拟环境,可以使用:

poetry shell

1.5- 管理依赖

1.5.1- 添加依赖

poetry add <package-name>

1.5.2- 添加开发依赖

poetry add <package-name> --dev

1.5.3- 更新依赖

poetry update

1.5.4- 卸载依赖

poetry remove <package-name>

1.6- 配置和源管理

Poetry 允许你配置 PyPI 镜像源,以加快依赖的下载速度。可以在 pyproject.toml 文件中添加如下内容:

[[tool.poetry.source]]
name = "douban"
url = "https://pypi.doubanio.com/simple/"
default = true

1.7- 总结

Poetry 是一个强大的工具,能够有效管理 Python 项目的依赖关系和打包过程。通过使用 Poetry,开发者可以避免许多常见的依赖管理问题,提高开发效率。对于希望简化 Python 项目管理的开发者来说,Poetry 是一个值得推荐的选择 。