1

经过一天的互联网浏览后,我在这里问这个问题:

有没有办法得到pyparsing结果,fe

result = longSentence.parseString(text.lower())

JSON格式?

2013 年 5 月 27 日 11:46 更新:
好的。所以我尝试制作一个简单的英语解析器。
句子“走 5 米,你看到了什么?”的结果 现在打印为列表:

[[[['go'], [['5', 'metres']]]], 'and', ['what do you see?']]

['what do you see?']标记为SetResultsName('Question')
其他标记为相似。

如果它将以这种形式打印该数据,那就太好了:

{
    "Sentence1":
    {
        "Order":
        {
            "Predicate": 'go',
            "Subject": ['5', 'metres']
        }
    },
    "Sentence2":
    {
        "Question": 'what do you see?'
    }
}
4

2 回答 2

3

您必须更加明确,但一般方法是获取解析结果并使用json模块(您是否希望将其作为嵌套字典/列表、扁平列表/等...取决于您)

import json
json_string = json.dumps(result.asList())
于 2013-05-27T10:28:59.920 回答
2

行。在再次尝试查看文档后,我发现了一种以XML形式返回此数据的非常好的方法:

result = longSentence.parseString(text.lower()).asXML()

如果我将此问题与答案一起添加- 就完成了。因此,以JSON形式获得结果并不容易,但也不难。我希望任何有需要的人都能找到它。

于 2013-05-27T13:52:02.100 回答