如何在Python安装脚本中要求importlib.resources

问题描述

我有一个Python包,该包尝试导入importlib.resources模块(据我所知在Python 3.7中已添加),然后在失败的情况下重新导入importlib_resourcesimportlib_resources由PyPI软件包importlib-resources提供。

因此,我希望我的pip安装依赖项为“如果运行3.7或更高版本,则什么都没有,否则,则为importlib-resources”。

在设置脚本中是否可以通过某种方式指定这种依赖性?

解决方法

这是通过environment markers完成的。 setuptools构建系统的语法如下:

from setuptools import setup

setup(
    ...
    install_requires=[
        'importlib_resources; python_version < "3.7"',]
)