'LazyCorpusLoader'对象不可迭代

Ver*_*a W 2 nltk

以下示例创建anagram字典.然而,它抛出一个TypeError: 'LazyCorpusLoader' object is not an iterator:

import nltk
from nltk.corpus import words

anagrams = nltk.defaultdict(list)
for word in words:
    key = ''.join(sorted(word))
    anagrams[key].append(word)

print(anagrams['aeilnrt'])
Run Code Online (Sandbox Code Playgroud)

len*_*enz 6

您必须.words()words语料库对象上使用该方法.

具体来说:改变

for word in words:
Run Code Online (Sandbox Code Playgroud)

for word in words.words():
Run Code Online (Sandbox Code Playgroud)

它应该工作.