相关疑难解决方法(0)

requirements.txt取决于python版本

我正在尝试使用六个将python2包移植到python3(不是我自己的),以便它与两者兼容.但是,requirements.txt中列出的一个软件包现在包含在python3 stdlib中,而pypi版本在python3中不起作用,所以我想有条件地排除它.在setup.py中这样做很容易,我可以这样做:

if sys.version_info[0] == 2:
    requirements += py2_requirements
else:
    requirements += py3_requirements
Run Code Online (Sandbox Code Playgroud)

但是我希望requirements.txt能够反映出正确的列表.我在pip文档中找不到任何相关内容.所以有人知道怎么做,或者甚至可能吗?

python pip

71
推荐指数
2
解决办法
2万
查看次数

你能在setuptools中为Python 2和3设置条件依赖吗?

在发布支持Python 2和3的Python egg时,您是否可以指定根据您使用的版本而更改的依赖项?例如,如果您使用dnspythonPython 2,则会调用Python 3版本dnspython3.

您能否setuptools.setup()以这样的方式编写您的函数:如果这是唯一的障碍,那么您的egg可用于两个版本,即,如果您已经运行2to3以确保库的其余部分与两个版本兼容.

我查看了这些文件,似乎无法找到这个问题的答案:

python setuptools dependency-management

21
推荐指数
1
解决办法
3144
查看次数

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

我有一个依赖的python库importlib.importlib是在Python 2.7的标准库中,但是是旧python的第三方包.我通常将我的依赖项保存在pip样式的requirements.txt中.当然,如果我放在importlib这里,如果安装在2.7上则会失败.只有在标准库中不可用时才能有条件地安装importlib?

python import dependencies dependency-management

5
推荐指数
1
解决办法
3408
查看次数

pip wheel条件依赖

在开发用于开发python软件包的virtualenv的过程中,我经常使用“ pip wheel”发行。生成包装所需的所有车轮档案。我通过在setuptools extras_require参数中列出条件依赖项来开始使用它们。是否可以生成特定条件依赖项的车轮档案?

不支持类似“ pip wheel“。[conditional_feature]”的内容。(至少在python-2.7上)请注意,我可以使用以下命令在virtualenv中安装这些依赖项:pip install -e“。[conditional_feature]”

python pip python-wheel

5
推荐指数
1
解决办法
527
查看次数