我比较新,正在学习python。我正在尝试编写一个应用程序,该应用程序将采用用户提供的单词并就该单词提供一些替代建议。似乎 nltk 拥有我需要的大部分内容。我一直在查看一些示例,并且能够使其按如下方式工作:
from nltk.corpus import wordnet as wn
for lemma in wn.synset('car.n.01').lemmas:
print lemma, lemma.count()
这工作正常。我发现的问题是,如果用户拼写错误或将单词复数,那么我会崩溃:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/nltk-2.0.1rc1-py2.6.egg/nltk/corpus/reader/wordnet.py", line 1035, in synset
raise WordNetError(message % (lemma, pos))
nltk.corpus.reader.wordnet.WordNetError: no lemma 'cars' with part of speech 'n'
基于此错误,它似乎找不到“汽车”作为名词。有没有办法进行搜索以查看是否找到了这个词,或者有更好的方法来实现这个?