我最近开始尝试使用Poetry进行软件包和依赖项管理,但我仍然习惯于Poetry和我在setuptools上的经验之间的差异。具体来说,希望能帮助您理解如何处理以下情况。
我有一个要与我的包裹捆绑在一起的数据文件,存储在包裹的子目录中。使用setup.py,我将在setup.py文件中指定文件和目录名称,然后使用pkg_resources API在我的代码中访问该文件。
使用Poetry和pyproject.toml的等效方法是什么?
[不同于setuptools
poetry
会自动将包文件夹中的所有文件捆绑到您的包中,除非您没有在.gitignore
或pyproject.toml
中明确排除它们。
因此,在安装软件包后,可以使用pkg_resources
访问它们。
您仍然可以使用setuptools的pkg_resources
。
您还可以使用Python自己的标准库中的其中之一: