【问题标题】:Python poetry, install optional dependenciesPython 诗歌,安装可选依赖项
【发布时间】:2021-10-17 18:34:17
【问题描述】:

这是duplicate,我知道。然而,没有任何帮助。我只想要这个的等价物:

$ pip install pydantic[email]

我已阅读所有相关帖子。现在我的pyproject.toml 看起来像这样(我也尝试了其他所有方法):

[tool.poetry.dependencies]
pydantic = {version = "*", optional = true, extras = ["email"]}
...

[tool.poetry.extras]
email = ["pydantic"]

我还删除了.venvpoetry.lock,然后是$ poetry install。没用。运行时错误很明显:

ImportError: email-validator is not installed, run `pip install pydantic[email]`

我可以添加一个细节:pydantic 本身就是一个依赖项(在我遇到这个问题之前,pyproject.toml 没有它)。

【问题讨论】:

  • 运行poetry add 'pydantic[email]'然后查看pyproject.toml的内容。
  • 是的,它只是pydantic = {extras = ["email"], version = "^1.8.2"}。它有效。看起来我也试过了,手动:)。 [tool.poetry.extras] 部分不再需要?
  • [tool.poetry.extras]optional = true 结合的部分是如果您的项目(库或应用程序)本身具有“extras”。所以在你的情况下,你不需要那些。
  • 你会创建一个答案,所以我可以点击它吗?
  • 是的,这不是重复的。你的链接帖子是关于提供额外的,你的问题是关于消费它们。

标签: python-packaging python-poetry


【解决方案1】:

pyproject.toml中添加如下内容:

[tool.poetry.dependencies]
pydantic = {version = "*", extras = ["email"]}

或通过命令行:

poetry add 'pydantic[email]'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-10
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 2021-11-24
    • 2022-12-17
    • 2020-07-08
    • 2018-02-01
    相关资源
    最近更新 更多