在某些情况下,有各种模块,每个模块都实现了一个公共 API(在我的例子中,旧的 pure-python elementtree
、cElementTree
、lxml.etree
和 built-in xml.etree
)。我可以编写模块ElementTree
来尝试这些选项中的每一个,并根据我自己的偏好顺序采用第一个存在的模块——但我找不到任何关于指定只有其中一个必须安装在setup.py
. 我想写一些看起来像这样的东西:
setup(
...,
install_requires="""
elementtree | cElementTree | lxml
""",
...
)
这是可能的吗?