我想在WordNet中找到至少18个字符长的单词。我尝试了以下代码:
from nltk.corpus import wordnet as wn
sorted(w for w in wn.synset().name() if len(w)>18)
我收到以下错误消息:
我正在使用Python 3.4.3。
如何修复我的代码?
最佳答案
使用wn.all_lemma_names()
获取所有引理的列表。我相信这是您将从Wordnet中得到的所有单词,因此不需要遍历同义词集(但是如果您愿意,可以为每个引理调用同义词集)。
您可能需要按长度对匹配进行排序:
longwords = [ n for n in wn.all_lemma_names() if len(n) > 18 ]
longwords.sort(key=len, reverse=True)
关于python - NLTK-WordNet : list of long words,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34083039/