NLTK解析中的复杂列表

2024-06-26 00:05:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将从max entropy syntactic parser返回的列表解析为nltk树,但是从我看到的here树是通过初始化每个节点创建的,有更简单的方法吗? 这是一个列表示例。你知道吗

[u'SBAR', [u'WHADVP+WRB', 'how'], [u'S', [u'VP', [u'VBD', 'did'], [u'VP', [u'VB', 'serfdom'], [u'VP', [u'VB', 'develop'], [u'SBAR', [u'IN', 'in'], [u'S', [u'CC', 'and'], [u'S', [u'ADVP+RB', 'then'], [u'VP', [u'VB', 'leave'], [u'NP+NNP', 'Russia']]]]]]]], [u'.', '?']]]

Tags: 方法parser示例列表节点heremaxentropy
1条回答
网友
1楼 · 发布于 2024-06-26 00:05:24

我为上面的递归解决方案创建了以下函数。你知道吗

def List_To_Tree(lst):
    if(not isinstance(lst, basestring)):
        if(len(lst) == 2 and isinstance(lst[0], basestring) and isinstance(lst[1], basestring)):                
            lst = Tree(str(lst[0]).split('+')[0],[str(lst[1])])
        elif(isinstance(lst[0], basestring) and not isinstance(lst[1], basestring)):
            lst = Tree(str(lst[0]).split('+')[0],map(List_To_Tree, lst[1: len(lst) ]))
    return lst

相关问题 更多 >