Python Pyparsing 1.4 TypeError:未调整大小的对象的len()
我有一个解析器正在为较新的pyparsing工作,但现在它在较旧的版本中抛出了一个错误…Python Pyparsing 1.4 TypeError:未调整大小的对象的len(),python,pyparsing,Python,Pyparsing,我有一个解析器正在为较新的pyparsing工作,但现在它在较旧的版本中抛出了一个错误…pyparsing 1.4-1.1。我已经完成了调试,不知道如何解决这个问题。谁能告诉我这里有什么问题吗。谢谢 pairs = [{'category': 'General Information', 'kv': Group(Word(alphanums) + Word(alphanums))}, {'category': 'Last Reset:', 'kv': Group
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
Pyparsing是一个占用空间非常小的库,只是一个源文件。如果您无法安装新版本,只需在应用程序自己的源代码中添加正确版本的pyparsing。当然,这并不理想,您现在必须在自己的应用程序中维护pyparsing库代码。但听起来你似乎处于一种绝望的境地。
组(Regex(date\u Regex)+Regex(time\u Regex)
-组是否意味着未关闭?下一行包括可选的。尝试在单独的步骤中建立对
数据结构,以获得更详细的回溯。@user2357112我尝试了,并对其进行了解构,我发现我的第二对中存在问题。找不到它是什么尽管如此,它在我的Mac电脑上使用python2.7.2
和Pyparsing 2.0.1
运行良好,但在VMWare中使用Pyparsing 1.4
和python2.4
运行良好,我无法升级它