NLTK Wordnet,错误排序(wn.langs())

时间:2014-08-29 02:35:31

标签: python nltk wordnet

所以我对此比较陌生,我想要一些帮助。

所以我试图让nltk中的Wordnet使用Open Multilingual WordNet。这是我来到的页面,其中显示了如何执行此操作http://www.nltk.org/howto/wordnet.html

问题是当我尝试sorted(wn.langs())时出现此错误

Traceback (most recent call last): 
File "<stdin>", line 1, in <module>
AttributeError: 'WordNetCorpusReader' object has no attribute 'langs'

由于我使用的是python 2.7,我知道它必须是sorted(wn.langs)而不是sorted(wn.langs()),但无论哪种方式都会出现此错误。

任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:2)

我追查到这一点,我认为这是一个NLTK版本问题。您有什么NLTK版本?

如果你开始翻译,然后运行

from nltk.corpus import wordnet as wn
sorted(wn.langs())

当我在nltk==2.0.4(也使用Python 2.7)下运行此代码时,我看到了与您相同的错误。所以我检查了源代码,而langs(self)方法并不存在。但是,查看最新的stable version on GitHub,您可以看到它就在那里。

假设您正在使用pip(如果您不是,并且如果您使用Windows go here并按照&#34;替代说明&#34;),请执行

pip install --upgrade nltk

这应该安装nltk==3.0.0

再次运行代码,您应该看到

>>> sorted(wn.langs())
[u'als', u'arb', u'cat', u'cmn', u'dan', u'eng', u'eus', u'fas', u'fin', u'fra', u'fre', u'glg', u'heb', u'ind', u'ita', u'jpn', u'nno', u'nob', u'pol', u'por', u'spa', u'tha', u'zsm']