在python2.6上有条件地安装importlib
我有一个依赖于 importlib
的 python 库。 importlib
位于 Python 2.7 的标准库中,但它是旧版 Python 的第三方包。我通常将依赖项保存在 pip 样式的 requests.txt 中。当然,如果我把importlib
放在这里,如果安装在2.7上就会失败。仅当标准库中不可用时,如何有条件地安装 importlib?
I have a python library that has a dependency on importlib
. importlib
is in the standard library in Python 2.7, but is a third-party package for older pythons. I typically keep my dependencies in a pip-style requirements.txt. Of course, if I put importlib
in here, it will fail if installed on 2.7. How can I conditionally install importlib only if it's not available in the standard lib?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为使用 pip 和单个需求文件这是不可能的。我可以想到两个选项:
多个需求文件
创建一个包含大部分软件包的 base.txt 文件:
并为 python 2.6 创建一个需求文件:
为 2.7 创建一个需求文件:
setup.py 中的需求
如果您的库有一个 setup.py 文件,你可以检查 python 的版本,或者只是检查库是否已经存在,如下所示:
I don't think this is possible with pip and a single requirements file. I can think of two options I'd choose from:
Multiple requirements files
Create a base.txt file that contains most of your packages:
And create a requirements file for python 2.6:
and one for 2.7:
Requirements in setup.py
If your library has a setup.py file, you can check the version of python, or just check if the library already exists, like this: