如何访问我正在编写的包的版本号?

问题描述 投票:0回答:1

我正在尝试构建一个Python项目。我使用 Poetry 来管理依赖关系。在我的

pyproject.toml
中,我有以下内容:

[tool.poetry]
name = "gitdida"
version = "0.2.0"

我的目录结构是这样的:

project-root/
|-- pyproject.toml
|-- src/
|   |-- gitdida/
|       |-- __init__.py
|-- tests/
|   |-- test_script.py

我希望能够访问项目代码文件中的版本。然而,Poetry 本身并不提供对代码的访问。我在网络上查找信息,chatGPT说可以通过

importlib.metadata
获取版本号:

from importlib.metadata import version

def test_version():
    expected = "0.2.0"
    assert version("gitdida") == expected

但是,测试后我得到错误:

importlib.metadata.PackageNotFoundError: No package metadata was found for gitdida

为什么脚本找不到gitdida包?我已经被困在这里很长时间了。

我询问了chatGPT 3.5和Bard,但都没有给我解决方案。

python-3.x path version-control python-poetry python-importlib
1个回答
0
投票

谢谢@Brian61354270 我运行

poetry install
后,脚本测试通过了。 谢谢。

© www.soinside.com 2019 - 2024. All rights reserved.