宝宝快睡觉游戏
85.67M · 2025-12-13
在 Python 项目中,依赖管理和环境隔离一直是开发者的痛点。传统上我们用 pip + virtualenv,虽然能解决问题,但维护复杂依赖时会显得笨重。Poetry 的出现,让 Python 的项目管理更优雅、更现代化。
对比其他语言的情况:
npm 和 yarn,一行命令就能安装依赖并生成 package.json、package-lock.json。cargo,集依赖管理、构建、发布于一体。go mod 来处理模块依赖。Poetry 本身提供了独立安装方式,无需绑定到系统的 Python,避免全局污染。
curl -sSL https://install.python-poetry.org | python3 -
安装完成后,你可以用 poetry --version 来检查是否成功。
相比之下:
npm 是随 Node.js 一起安装的。cargo 是随 Rust 工具链安装的。创建一个新项目只需要一行命令:
poetry new my_project
这会生成一个标准化目录结构,包括 pyproject.toml(相当于 Python 世界里的 package.json)。
package.json。Cargo.toml。go.mod。Poetry 的 pyproject.toml 已经逐渐成为 Python 社区的统一标准。
安装依赖只需:
poetry add requests
Poetry 会自动更新 pyproject.toml 和 poetry.lock 文件,保证团队成员依赖一致。
类比:
npm install express --savecargo add serdego get github.com/gin-gonic/gin可见,Poetry 的体验已经和这些现代语言生态保持一致。
Poetry 内置了虚拟环境管理,不需要额外安装 venv 或 virtualenv:
poetry shell
poetry run python main.py
这让环境切换和运行更自然。
当你要发布到 PyPI 时,只需要:
poetry build
poetry publish
流程和 Rust 的 cargo publish 非常相似,也避免了传统 setup.py 的繁琐。
Poetry 让 Python 开发者拥有了和其他语言相媲美的现代化工具链:
pyproject.toml)poetry.lock)如果你过去在 Python 项目里被“依赖地狱”困扰,那么 Poetry 将是一次质的飞跃。