Pyparsing纸浆错误

时间:2016-09-11 12:56:37

标签: python pyparsing pulp

当我尝试安装ManPy时,收到以下错误消息:

  

错误:已安装pyparsing 2.1.4但需要pyparsing< = 1.9.9   by set(['pulp'])

我检查了Pyparsing设置,但我找不到解决方案。

1 个答案:

答案 0 :(得分:0)

这实际上是PuLP的setup.py中的一个错误(ManPy显然使用它):

#hack because pyparsing made version 2 python 3 specific
if sys.version_info[0] <= 2:
    pyparsing_ver = 'pyparsing<=1.9.9'
else:
    pyparsing_ver = 'pyparsing>=2.0.0'

从pyparsing 2.0.1开始,pyparsing统一为Py2和Py3安装使用单个代码库,但仅使用已经向后移植到2.7的Py3构造。需要一些版本才能完成这一切,但是pyparsing(自2.0.3开始,现在版本为2.1.9)现在与Python 2.6及更高版本兼容。

如果您在2.6之前使用的是Python版本,那么您需要安装pyparsing 1.5.7,这是2.6之前的兼容版本,并且没有计划新的1.x版本。

联系PuLP的维护者,看看是否可以让他们在setup.py文件中修复此版本测试。

<强>更新: 仔细观察,我发现PuLP使用一个名为Amply的小模块来进行实际的表达式解析。我刚刚在我的pyparsing 2.1.9环境中运行了一些测试,它们运行得很好。