标签:python nltk context-free-grammar
所以我正在编写一个涉及python和NLTK的教程.
我目前正在使用无上下文语法.
我输入以下命令并收到错误…
>>> from nltk import parse_cfg
Traceback (most recent call last):
File "(stdin)", line 1, in (module)
ImportError: cannot import name parse_cfg
有谁知道可能导致什么?一些cfg命令可以工作,但不是这个.
解决方法:
我们更新了NLTK 3的API.请read the docs
访问旧的nltk.parse_cfg()的方法是使用CFG.fromstring()
http://www.nltk.org/howto/grammar.html的例子:
>>> from nltk import CFG
>>> grammar = CFG.fromstring("""
... S -> NP VP
... PP -> P NP
... NP -> Det N | NP PP
... VP -> V NP | VP PP
... Det -> 'a' | 'the'
... N -> 'dog' | 'cat'
... V -> 'chased' | 'sat'
... P -> 'on' | 'in'
... """)
>>> grammar
<Grammar with 14 productions>
>>> grammar.start()
S
>>> grammar.productions()
[S -> NP VP, PP -> P NP, NP -> Det N, NP -> NP PP, VP -> V NP, VP -> VP PP,
Det -> 'a', Det -> 'the', N -> 'dog', N -> 'cat', V -> 'chased', V -> 'sat',
P -> 'on', P -> 'in']
标签:python,nltk,context-free-grammar 来源: https://codeday.me/bug/20190714/1459342.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。