Python - 指定要使用的库版本(对于所有库)

Python - specify what library version to use (for all of them)

如何在Python项目中列出所有库及其版本?
(类似于 Java maven pom.xml 和 Node.js npm 'package.json')

,
例如pip install pandas==0.23,但这只是希望在 README 中列出,但很可能会被遗忘。

还有 pipconda,他们会解决这个问题吗?或者也许其他一些第三个工具试图统一任何 pip 或 conda 用法?

two main mechanisms 可以为 package/repository 指定库:

  • 对于可以与所有依赖项一起安装的开箱即用包,请使用 setup.py/pyproject.toml。包管理器使用它们自动安装包安装所需的依赖项。
  • 对于可能包含许多软件包的给定设置的可重现安装,请使用 requirements.txt。这些被包管理器用来显式安装所需的依赖项。

值得注意的是,两者处理不同的用例:包依赖项定义了 一般 依赖项,仅在需要兼容性时将依赖项版本限制在特定范围内。要求定义 精确 依赖性,限制所有直接和间接依赖性版本复制一些预先存在的设置。