Skip to main content

Poetry

· 3 min read
Jiujiuwhoami
Digital nomads

Poetry 是 Python 的一个现代化 项目管理工具,主要用于:


🚀 简单来说:

Poetry = 管理依赖 + 打包发布 + 虚拟环境管理,一站式搞定!


🧰 它能做什么?

功能描述
✅ 依赖管理安装、锁定、更新依赖(替代 pip + requirements.txt
✅ 虚拟环境管理自动创建和使用虚拟环境(类似 venv
✅ 项目构建构建发布包(如 wheel、sdist)
✅ 发布 PyPI一键将包发布到 PyPI
✅ 项目初始化自动创建标准化项目结构(含 pyproject.toml)

🎯 和传统 pip + requirements.txt 有啥区别?

比较项pip + requirements.txtPoetry
依赖管理手动写 requirements.txt自动记录在 pyproject.toml
虚拟环境手动 python -m venv自动创建和切换
锁定依赖无官方标准,需 pip-tools内置 poetry.lock
项目发布手动写 setup.py自动生成
可维护性难以复现、环境易冲突更干净、更可控

🛠️ 使用示例

📦 创建项目

poetry new myproject

会自动生成:

myproject/
├── pyproject.toml ← 项目信息 & 依赖
├── myproject/ ← 源代码
└── tests/ ← 测试代码

📥 安装依赖

poetry add requests

会更新 pyproject.tomlpoetry.lock


🧪 启动虚拟环境并运行代码

poetry shell  # 启动虚拟环境
poetry run python your_script.py # 运行某个脚本

📤 发布项目到 PyPI(高级用法)

poetry build
poetry publish

❤️ 为什么很多人喜欢用它?

  • 不再混乱依赖
  • 不再手写 setup.py
  • 不再手动管理虚拟环境
  • 更适合 CI/CD 和团队协作

✅ 总结一句话:

Poetry 是 Python 项目开发的现代化工具链,帮你从创建、开发到发布全流程搞定。