NTLKでpythonを使用して、いくつかの単語の頭字語を取得しようとしています(今のところ2)。最初の単語では動作するようですが、2 番目の単語では動作しないようです。NTLK については、まだ学ぶべきことがたくさんあると思います。以下にいくつかの単純化されたコード例があります。私は基本的に頭字語の 2 つのリストを取得しようとしています。単語ごとに 1 つのリストです。すべてが最初の for ループでうまくいきました。2番目の単語を試した後、次のようになりました。
syn2 = wn.synsets(word)[0].lemmas[y]
IndexError: list index out of range
なぜこれが起こっているのかを理解するのに誰かが私を助けてくれることを願っています.
import nltk
from nltk.corpus import wordnet as wn
import string
from array import *
syn1 = ''
syn2 = ''
mylist = []
mylist2 = []
mylist3 = []
Web_Keywd = 'car loan'
wuser_words = Web_Keywd.split()
for word in wuser_words:
i=i+1
#first
if (i == 1) :
synset1 = wn.synsets(word)
y = 0
for synset in synset1:
syn1 = wn.synsets(word)[0].lemmas[y]
syn1 = syn1.name
mylist2.append(syn1)
y=y+1
if (i == 2) :
y = 0
for synset2 in wn.synsets(word):
syn2 = wn.synsets(word)[0].lemmas[y]
syn2 = syn2.name
mylist3.append(syn2)
y=y+1