首先,我把树变成了一个列表: 插入一个已经标记的句子,它将返回一个树。在
def LanguageCreateTree(tokenizedSentence):
cp = nltk.RegexpParser(GRAMMAR)
result = cp.parse(tokenizedSentence)
result = str(result)
print(result)
>>> A red cat with a hat
(S A/DT (VP red/VBN (NP cat/NN)) with/IN a/DT hat/JJ)
我该如何根据这个字符串创建一个包含列表的列表呢? 我需要它来列出这样的清单:
^{pr2}$
这比您想象的要容易得多:-)NLTK的
Tree
类是一个列表(更具体地说,它是从list类派生的)。它的结构正是你所追求的。只需对cp.parse()
的结果使用普通的list方法。下面是一个近似的例子(动态构建一棵树以供说明):在本例中,我没有将单词从POS标记中分离出来;您的树看起来会有所不同。还要注意,
^{pr2}$Tree
本身有很好的打印方式,但是您可以通过使用repr()
看到真实的结构:相关问题 更多 >
编程相关推荐