我有这个解析器适用于较新的pyparsing,但现在它正在抛出旧版本的错误...... Pyparsing 1.4-1.1
。我已经介入调试,无法弄清楚如何解决这个问题。谁能告诉我这里的问题是什么。谢谢!
pairs = [{'category': 'General Information',
'kv': Group(Word(alphanums) + Word(alphanums))},
{'category': 'Last Reset:',
'kv': Group(Word(alphas, max=1) + Word(alphas)) + Literal(':').suppress()
+ Group(Regex(date_regex) + Regex(time_regex)
+ Optional(SkipTo(LineEnd())))
}
]
完整的追溯是这样的:
Traceback (most recent call last):
File "foobar.py", line 33, in ?
pairs = [{'category': 'General Information',
File "/var/lib/python-support/python2.4/pyparsing.py", line 1219, in __init__
if len(pattern) == 0:
TypeError: len() of unsized object
答案 0 :(得分:0)
Pyparsing是一个非常小的库,只是一个源文件。如果您无法安装新版本,只需使用您应用程序自己的源代码添加正确版本的pyparsing。当然,这并不理想,您现在必须使用自己的应用程序维护pyparsing lib代码。但听起来你是一个绝望的地方。