import nltk
from nltk.parse.generate import generate,demo_grammar
from nltk import CFG
grammar = CFG.fromstring("""
ROOT -> S
S -> NP VP
NP -> NP PP
NP -> DT NN
DT -> 'The'
NN -> 'work'
PP -> IN NP
IN -> 'of'
NP -> DT NN
DT -> 'the'
NN -> 'painter'
VP -> VBZ ADJP
VBZ -> 'is'
ADJP -> JJ
JJ -> 'good'
""")
print(grammar)
for sentence in generate(grammar, n=100):
print(' '.join(sentence))
給出了一個錯誤NLTK CFG遞歸深度誤差
RuntimeError: maximum recursion depth exceeded while calling a Python object
試圖改變在functools.py隱蔽功能,還是同樣的問題。
查看https://github.com/nltk/nltk/issues/7 – alvas
看過帖子。所以問題一直持續到日期,是嗎? –
這不是圖書館的問題。這是你如何定義語法的一個問題。你看到語法中出現無限循環的部分嗎? – alvas