Дифференц нлтк, ворднет нужен гиперным выходом

Когда я пытаюсь напечатать гиперное, я просто хочу слово, а не всю информацию о слове.

pp = wn.synset('grow.v.01')
pp1= pp.hypernyms()
print pp1

Мой вывод [Synset('change.v.02')]. Я просто хочу "изменить". Какие изменения мне нужно сделать? Извините, я новичок в Wordnet.

1 ответ

Вы можете использовать lemma_names функция Synset объект. Имейте в виду, что он возвращает список имен, вы можете выбрать то, что вас устраивает (в данном случае это только 1 результат "изменение").

>> print(pp1[0].lemma_names())
['change']

Также звоню hypernyms() также возвращает вам список, таким образом я использовал pp1[0], Например, запрос для возврата "собака" [dog, frump, cad...] и т.д.. Если вы хотите получить все lemma_names для всех гипернимов вы можете использовать понимание списка.

>> [s.lemma_names() for s in wn.synsets('dog')]
[['dog', 'domestic_dog', 'Canis_familiaris'],
 ['frump', 'dog'],
 ['dog'],
 ...
 ['chase', 'chase_after', 'trail', 'tail', 'tag', 'give_chase', 'dog', 'go_after',  'track']]
Другие вопросы по тегам