Я пытаюсь получить синонимы данного слова, используя Wordnet. Проблема в том, что, несмотря на то, что я делаю то же, что написано здесь: here, он возвращает ошибку.Получить синонимы из synset возвращает ошибку - Python
Вот мой код:
from nltk.corpus import wordnet as wn
import nltk
dog = wn.synset('dog.n.01')
print dog.lemma_names
>>> <bound method Synset.lemma_names of Synset('dog.n.01')>
for i,j in enumerate(wn.synsets('small')):
print "Synonyms:", ", ".join(j.lemma_names)
>>> Synonyms:
Traceback (most recent call last):
File "C:/Users/Python/PycharmProjects/PribliznostneVyhladavanie/testy.py", line 38, in <module>
print "Synonyms:", ", ".join(j.lemma_names)
TypeError
Единственное, что я хочу, чтобы поставить слово и получить список синонимов. Кто-нибудь знает, что случилось?
EDIT: Я попробовал другой совет, который я нашел здесь, в stackoverflow. Это тоже не работает.
syns = wn.synsets('car')
print [l.name for s in syns for l in s.lemmas]
>>> TypeError: 'instancemethod' object is not iterable
примеры вы нашли это для более ранней версии NLTK. См. Мой ответ ниже для более подробной информации. – Thibaut