在一些情況下,存在各實現一個共同的API的各種模塊(在我的情況下,舊純Python elementtree
,cElementTree
,lxml.etree
,和內置xml.etree
) 。我可以使用ElementTree
編寫模塊來嘗試這些選項中的每一個,並根據我自己的首選順序採用第一個選項 - 但我找不到指定僅在setup.py
中只安裝其中一個的任何信息。我想寫一些看起來像這樣的東西:setuptools的依賴性規範「這些中的至少一個」
setup(
...,
install_requires="""
elementtree | cElementTree | lxml
""",
...
)
這是,或者類似的東西嗎?
這個問題實際上發生在我們正在使用的開源第三方模塊中,所以我一直在尋找一個解決方案作爲補丁貢獻,並且希望避免公開羞辱模塊開發者的表象。我們的其他代碼依賴於lxml,並且在Py26中運行,所以我們至少有兩個可用的實現 - 不是名爲'elementtree'的實現。 – dcrosta 2010-01-08 01:46:38