Skip to content

poetry配置

pip安装

# 使用 pip 安装
pip install poetry

# 验证安装
poetry --version

# 如果需要升级
pip install --upgrade poetry

项目设置

首先,创建一个新的项目

poetry new poetry-demo

这会创建一个poetry-demo的文件夹,并有以下文件:

poetry-demo
├── pyproject.toml
├── README.md
├── poetry_demo
│   └── __init__.py
└── tests
    └── __init__.py

pyproject.toml是非常重要的。它将协调你的项目及其依赖关系。

[project]
name = "poetry-demo"
version = "0.1.0"
description = ""
authors = [
    {name = "XXX", email = "XXX"}
]
readme = "README.md"
requires-python = ">=3.XX"
dependencies = [
]

[build-system]
requires = ["poetry-core>=2.0.0,<3.0.0"]
build-backend = "poetry.core.masonry.api"

Poetry假定你的包中包含一个和project.name同名的包,并且这个同名的包位于项目的根目录中。否则,请填充tool.poetry.packages以指定你的包及其位置。

同样地,传统的MANIFEST.in文件被project.readmetool.poetry.includetool.poetry.exclude部分所取代。此外,tool.poetry.exclude会隐式地根据你的.gitignore文件填充。

设置python版本

Note

与其他包不同,Poetry不会自动为你安装Python解释器。如果你想像脚本或应用程序一样运行你包中的Python文件,你必须自己提供Python解释器来运行它们。

Poetry将要求你明确指定你打算支持的Python版本,并且其通用锁定功能将确保你的项目可以在所有支持的Python版本上安装(并且所有依赖项都声称支持这些版本)。

再次强调,与其它依赖项不同,设置Python版本仅仅是明确指定你打算**支持**哪些Python版本.

[project]
requires-python = ">=3.9"

这就意味着会支持版本大于3.9.0的python

当运行poetry run时,必须保证拥有某个版本python的访问权限。

可以在python官网下载特定的 embed 版本,直接嵌入到当前项目。

初始化一个已存在的项目

Poetry可以用来“初始化”一个已填充内容的目录。要在名为pre-existing-project的目录中交互式地创建一个pyproject.toml文件:

cd pre-existing-project
poetry init

操作模式

Poetry有两种不同的运行模式。

默认是 包模式

使用虚拟环境

激活虚拟环境