Poetry installation and usage
Poetry installation and usage 官方安装教程写的挺好的,推荐使用pipx安装。poetry安装一般不会存在什么问题,只要pipx能够正常安装。 Poetry assumes your package contains a package with the same name as 在pyproject.toml配置文件中, 例如: 项目结构: poetry支持多种依赖格式 caret ex. tilde ex. wildcard ex. Inequality ex. 当使用 ex. Poetry提供了通过组(group)的方法管理项目依赖项。你可以通过它来管理比如只是给测试使用的依赖项。 你可以使用 例如: 这样将 Poetry文档注明: 依赖组(隐式组除外** 向依赖组里添加依赖项 使用 如果依赖组不存在,则会自动创建 从组里删除依赖项 使用 建立可选组 可以对组添加 安装/不安装组 默认情况下,除非表明可选(optional)的组,其余的都会被 可以使用 当一起使用时, 如果只想安装项目的运行时依赖项,则可以使用以下 如果想要安装项目根目录,并且不需要其他依赖项,则可以使用该 同步——安装依赖项,删除多余的包 Poetry 支持所谓的依赖项同步。依赖项同步可确保** 可以在 这个命令会有以下作用: 它可以与 主要依赖项总是会被安装,例如有[main] [dev] [docs],当执行Poetry使用
安装
基础用法
创建一个项目
poetry new poetry-demotool.poetry.name located in the root of your project. If this is not the case, populate tool.poetry.packages to specify your packages and their locations.tool.poetry.name需要与name=””相同,如果不同的话则需要通过tool.poetry.packages指定
[]
= "my_project"
[]
= "my_project"
[]
= "src"
项目已经存在,使用poetry管理
Poetry依赖项
安装依赖项
[]
= "^2.1"
poetry依赖项支持格式
^1.2.3 → >=1.2.3 <2.0.0~1.2.3 → >=1.2.3 <1.3.01.* → >=1.0.0 <2.0.0>= 1.2.0poetry add的时候可以使用@命令符,它等效于==,但是也可以使用poetry的修饰符
管理依赖项
tool.poetry.group.<group>来声明一个依赖组(dependency group)
pytest,pytest-mock这些用于测试的库使用test组来管理main**)必须仅包含您在开发过程中需要的依赖项。只有使用 Poetry 才能安装它们。要声明一组依赖项,以便在运行时向项目添加附加功能,请改用extras。最终用户可以使用 安装 Extras pip。poetry add来添加依赖项时,添加—group(-G)参数
poetry remove从特定组中删除软件包
optional=true来指定一个组为可选,在poetry install的时候该组不会被自动安装[]
= true
[]
= "*"
poetry install自动安装—with或者—without来指定安装或者不安装一些依赖组
--without优先于--with。例如,以下命令将仅安装可选test组中指定的依赖项。
--only main表示法:
--only-root选项。
poetry.lock**文件中锁定的依赖项是环境中唯一存在的依赖项,从而删除所有不必要的依赖项。poetry install时使用—sync参数
—with,—without一起使用
poetry install --with docs --sync时,[main]和[docs]会被安装,而[dev]会被省略