有没有人实现了从PyParsing输出的语法分析树的漂亮打印(最好使用Python的内置pprint模块),最好是缩进和对齐?
发布于 2013-06-07 20:23:46
您可以使用json来实现这一点。
import json
class PyParseEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, ParseResults):
x = obj.asDict()
if x.keys():
obj = x
else:
x = obj.asList()
if len(x) == 1:
obj = x[0]
else:
obj = x
else:
obj = super(PyParseEncoder, self).default(obj)
return obj然后
print json.dumps(parseresult, cls=PyParseEncoder, sort_keys=False, indent=2)如果你从json.dumps得到错误,只需为特定数据类型的编码器添加额外的处理程序即可。
https://stackoverflow.com/questions/15367061
复制相似问题