Мне нужно взять входной текстовый файл с одним словом. Затем мне нужно найти lemma_names, определение и примеры синтаксиса слова, используя wordnet. Я пролистал книгу: «Обработка текста на Python с помощью NLTK 2.0 Cookbook», а также «Обработка естественного языка с использованием NLTK», чтобы помочь мне в этом направлении. Хотя я понял, как это можно сделать с помощью терминала, я не могу сделать то же самое с помощью текстового редактора.
Например, если во входном тексте есть слово «ошеломлено», вывод должен быть таким:
ошарашил
(глагол) flabbergast, boggle, чаша переполнена с изумлением; "Это уму непостижимо!"
(прилагательное) ошеломленный, ошеломленный, ошеломленный, ошеломленный, ошеломленный, ошеломленный, ошеломленный - как будто ошеломленный с удивлением и удивлением; «полицейский круг был ошеломлен ее отрицанием того, что видел аварию»; «ошарашенные старейшины потеряли дар речи»; "был ошеломлен новостями о своем продвижении по службе"
Синтезы, определения и примеры предложений получены из WordNet напрямую!
У меня есть следующий фрагмент кода:
from __future__ import division
import nltk
from nltk.corpus import wordnet as wn
tokenizer = nltk.data.load('tokenizers/punkt/english.pickle')
fp = open("inpsyn.txt")
data = fp.read()
#to tokenize input text into sentences
print '\n-----\n'.join(tokenizer.tokenize(data))# splits text into sentences
#to tokenize the tokenized sentences into words
tokens = nltk.wordpunct_tokenize(data)
text = nltk.Text(tokens)
words = [w.lower() for w in text]
print words #to print the tokens
for a in words:
print a
syns = wn.synsets(a)
print "synsets:", syns
for s in syns:
for l in s.lemmas:
print l.name
print s.definition
print s.examples
Я получаю следующий вывод:
flabbergasted
['flabbergasted']
flabbergasted
synsets: [Synset('flabbergast.v.01'), Synset('dumbfounded.s.01')]
flabbergast
boggle
bowl_over
overcome with amazement
['This boggles the mind!']
dumbfounded
dumfounded
flabbergasted
stupefied
thunderstruck
dumbstruck
dumbstricken
as if struck dumb with astonishment and surprise
['a circle of policement stood dumbfounded by her denial of having seen the accident', 'the flabbergasted aldermen were speechless', 'was thunderstruck by the news of his promotion']
Есть ли способ извлечь часть речи вместе с группой имен лемм?