【问题标题】:Can PyProject.toml be used for Python Projects that Aren't Built?PyProject.toml 可以用于未构建的 Python 项目吗?
【发布时间】:2023-02-09 11:49:10
【问题描述】:
我有许多作为 cronjobs 运行的数据处理项目和一些作为 systemd 服务运行的 API。在这两种情况下,python 项目都没有构建为 python 包。
最近,在我实际的 python 包项目中,我非常喜欢使用 pyproject.toml 来管理依赖项和配置。一些像“ruff”这样的预提交也使用 pyproject.toml 作为他们自己的配置。
对于没有作为包安装的 Python 项目,包含一个 pyproject.toml 是 Pythonic 吗?是否可以在不将其变成可安装包的情况下执行此操作?
到目前为止,我已经尝试寻找类似的答案,但没有看到任何答案。请让我知道我应该努力的假设是我应该将我所有的项目打包。
【问题讨论】:
标签:
python
installation
packaging
python-venv
pyproject.toml
【解决方案1】:
是的,对于未构建为包的 Python 项目,您可以使用 pyproject.toml。使用 pyproject.toml 作为 Python 项目的配置文件变得越来越普遍,无论它们是否是包。
pyproject.toml 是一种文件格式,用于管理依赖项、构建配置以及与 Python 项目相关的其他信息。虽然它通常用于可安装包,但它也可以用于其他类型的 Python 项目,例如脚本或非打包项目。
事实上,您可以使用 pyproject.toml 来管理您的 cronjobs 和 systemd 服务的依赖关系和配置。通过这样做,您可以确保在所有项目中以一致和标准化的方式管理您的依赖关系,从而随着时间的推移更容易维护和更新您的项目。
要将 pyproject.toml 用于您的项目,只需在项目的根目录中创建一个 pyproject.toml 文件,并包含有关您的依赖项、构建配置和其他相关信息的信息。然后,您可以使用 pipenv 或 poetry 等工具来管理您的依赖项,并确保为您的项目安装每个依赖项的正确版本。