NLTK を必要とするプロジェクトに取り組む必要があるため、2 週間前に Python の学習を開始しましたが、Python と NLTK を理解するのに苦労しています。
NLTK のドキュメントから、次のコードを理解することができます。以下のコードに apple と pear という単語を手動で追加すると、うまく機能します。
from nltk.corpus import wordnet as wn
apple = wn.synset('apple.n.01')
pear = wn.synset('pear.n.01')
print apple.lch_similarity(pear)
Output: 2.53897387106
ただし、アイテムのリストを操作するには NLTK を使用する必要があります。たとえば、以下の項目のリストがあり、list1 の項目を list2 と比較したいと思います。たとえば、list1 の word1 を list 2 のすべての単語と比較し、次に list1 の word2 を list2 のすべての単語と比較し、すべての単語が含まれるまで比較します。 list1 が比較されます。
list1 = ["apple", "honey", "drinks", "flowers", "paper"]
list2 = ["pear", "shell", "movie", "fire", "tree", "candle"]
wordFromList1 = list1[0]
wordFromList2 = list2[0]
wordFromList1 = wn.synset(wordFromList1)
wordFromList2 = wn.synset(wordFromList2)
print wordFromList1.lch_similarity(wordFromList2)
上記のコードはもちろんエラーになります。変数を synset メソッド [wn.synset(*pass_variable_in_here*)] に渡す方法を教えてください。これにより、二重ループを使用して lch_similarity 値を取得できます。ありがとうございました。