在Python3.6的安装中,我刚刚尝试了
pip install nipet但我明白了:
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\me\AppData\Local\Temp\pip-install-eef9zqvc\nipet\setup.py", line 64
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('e> the current operating system is not supported.')?这很可能与针对Python2.x的nipet有关。
我已经在这个包的某些部分成功地尝试了2to3,并且注意到所有的不兼容都归结于print语句。但是,由于失败的是setup.py,所以我甚至无法将所有文件安装在正确的位置上来运行2to3。
是否有某种用于pip的2to3包装器可以让我不用花费太多人工就可以安装Python2.x包?
发布于 2018-12-04 13:33:19
泰瑞:不,你不能。
尼伯与Python3不兼容。正如@deceze在评论中所说的,在安装它之前,您需要修复它。皮普做不到这份工作。
签出代码并使其成为Python 3(这可能涉及到2到3甚至可能是手动更改)。然后再试着安装它。如果您对您所得到的感到满意,您可以将Python 3端口提交给维护人员。
另外,应该修复nipet以指定它是Python2,这样它只在PyPI上被列为Python2,而pip3甚至不尝试安装。您应该在bugtracker中打开一个问题,要求维护人员解决这个问题。甚至发送一个拉-请求添加适当的分类器到setup.py,如果你愿意这样做。
发布于 2018-12-06 09:10:01
虽然@Jér me所写的内容是真的,但并不是所有组件都是如此。为了完整起见,我想提到setuptools的setuptools选项,它完成了我想要的大部分工作。(不过,他们似乎不碰setup.py )。
以下是更多信息:
Setuptools通过将关键字参数use_2to3设置为True,提供了在代码中调用2到3的工具,作为构建过程的一部分,但是Setuptools项目强烈建议使用六、未来或其他兼容性库开发统一的代码基。
https://stackoverflow.com/questions/53613868
复制相似问题