当前位置: 首页 > 面试题库 >

有条件地在python2.6上安装importlib

张智
2023-03-14
问题内容

我有一个依赖于的python库importlib。importlib在python 2.7的标准库中,但是是用于较旧python的第三方程序包。我通常将依赖项保留在pip样式的requirements.txt中。当然,如果我放在importlib这里,如果安装在2.7上,它将失败。仅当标准库中没有可用的importlib时,我才能有条件地安装它吗?


问题答案:

我认为使用pip和单个需求文件是不可能的。我可以想到两种选择:

多个需求文件

创建一个包含大多数软件包的base.txt文件:

# base.txt
somelib1
somelib2

并为python 2.6创建一个需求文件:

# py26.txt
-r base.txt
importlib

和一个2.7:

# py27.txt
-r base.txt

setup.py中的要求

如果您的库中有setup.py文件,则可以检查python的版本,或者仅检查库是否已存在,如下所示:

# setup.py
from setuptools import setup
install_requires = ['somelib1', 'somelib2']

try:
    import importlib
except ImportError:
    install_requires.append('importlib')

setup(
    ...
    install_requires=install_requires,
    ...
)


 类似资料:
  • 问题内容: 我有一个配置。其中一个容器是Tomcat服务器,它在目录中部署了一些默认文件。 我希望能够传递(覆盖)将要由主机上的某些人部署的存档。我认为最好的办法就是以某种方式切换/覆盖启动:默认情况下,我想运行容器内的webapp(文件),但是我希望有可能从主机上挂载目录(对于开发/调试过程中的示例)。 当前,我的行中有以下行,如果需要默认行,则将其注释掉。 有没有更好的方法来实现这一目标? 问

  • 本文向大家介绍Python2.6版本pip安装步骤解析,包括了Python2.6版本pip安装步骤解析的使用技巧和注意事项,需要的朋友参考一下 首先看到这句话,给你一个忠诚的建议,除去平时出现疑难问题上各种博客搜索问题之外,安装部署一律去官方网站查找,尽量不要看到一个博客写了各种方法,就原原本本的照着人家的博客来一遍,可以当做参考,但是下载地址什么的最好自己去官网找一下。 官网是这个https:/

  • 问题内容: 我有一个组件,有时有时需要呈现为和,有时需要呈现为。在我读来确定这一点,是。 如果存在,则需要将组件包装在中。否则,它将仅呈现为。 可能? 这是我现在正在做的,但是感觉可以简化: 更新: 这是最终的锁定。感谢您的提示,@ Sulthan! 问题答案: 只需使用一个变量。 或者,您可以使用辅助函数来呈现内容。JSX和其他代码一样。如果要减少重复,请使用函数和变量。

  • 本文向大家介绍详解CentOS升级Python2.6到Python2.7并安装pip,包括了详解CentOS升级Python2.6到Python2.7并安装pip的使用技巧和注意事项,需要的朋友参考一下 现在大多数Centos6.x版本的系统python都是2.x,现因开发需求需要安装前端代码的构建工具glue,故必须要做python版本的升级 升级python 系统默认安装的python是2.6

  • 问题内容: 我用–no-site-packages选项创建了一个virtualenv。尝试安装PIL时出现错误: http://pastebin.com/SVqxs1sC 有人可以帮我弄这个吗? 我正在运行Ubuntu 10.04(64位) 问题答案: 您需要安装python-dev软件包。

  • 如何配置设置。py,这样它就不会试图覆盖已经存在的脚本了?或者,如果编写脚本失败,至少完成包安装的其余部分。我正在使用设置工具进行设置。皮耶。设置的相关部分。这是什么 我的setup.py有版本化脚本(脚本名称中包含python版本)和未版本化脚本。在OS X上,我使用2.7版本的系统python,这需要超级用户权限来运行pip(sudo pip...),这导致脚本安装在具有根所有权的下。然后,当