distutils / pip中的可选依赖项

时间:2011-06-04 16:29:44

标签: python distutils pip

安装我的python包时,我希望能够告诉用户各种可选的依赖项。理想情况下,我还想打印一条关于这些可选要求的信息以及它们各自的要求。

我还没有在pip或docutils的文档中看到任何东西。这些工具是否支持可选的依赖项?

2 个答案:

答案 0 :(得分:19)

这些被称为额外内容,here is how to use them in your setup.py

基本支持位于pkg_resources中。您需要在setup.py中启用分发。 pip也会理解他们:

pip install 'package[extras]'

答案 1 :(得分:2)

是的,@ Tobu指出并解释了here。在setup.py文件中,您可以添加如下一行:

extras_require = {
        'full': ['matplotlib', 'tensorflow', 'numpy', 'tikzplotlib']
    }

我有here这一行的示例。

现在,您可以通过pip install package_name之类的PIP基本/原始程序包进行安装,也可以通过pip install package_name[full]等具有所有可选依赖项的程序包进行安装

package_name是包裹的名称,full是因为我们在extras_require字典中放入了“ full”,但这取决于您输入的名字。


如果有人对如何编写可使用或不使用软件包的库感兴趣,我建议this answer