import nltk
from nltk import *
from nltk.corpus import wordnet as wn
output=[]
wordlist=[]
entries = nltk.corpus.cmudict.entries()
for entry in entries[:200]: #create a list of words, without the pronounciation since.pos_tag only works with a list
wordlist.append(entry[0])
for word in nltk.pos_tag(wordlist): #create a list of nouns
if(word[1]=='NN'):
output.append(word[0])
for word in output:
x = wn.synsets(word) #remove all words which does not have synsets (this is the problem)
if len(x)<1:
output.remove(word)
for word in output[:200]:
print (word," ",len(wn.synsets(word)))
シンセットのないすべての単語を削除しようとしていますが、何らかの理由で機能しません。プログラムを実行すると、単語が len(wn.synsets(word)) = 0 であると言われていても、リストから削除されていないことがわかりました。誰かが何が悪かったのか教えてもらえますか?