Чтобы найти синонимы, определения и примеры предложений с помощью WordNet

Мне нужно взять входной текстовый файл с одним словом. Затем мне нужно найти lemma_names, определение и примеры синсета слова с использованием wordnet. I прочитал книгу: «Обработка текста Python с помощью NLTK 2.0 Cookbook», а также «Обработка естественного языка с использованием NLTK», чтобы помочь мне в этом направлении. Хотя я понял, как это можно сделать с помощью терминала, я не могу сделайте то же самое с помощью текстового редактора.

Например, если во входном тексте есть слово «ошеломленный», выходные данные должны быть такими: (глагол) ошеломлять, пугаться, переварить - преодолеть изумление; "Это поражает воображение!" (прилагательное) ошеломлен, ошеломлен, ошеломлен, ошеломлен, ошеломлен, ошеломлен, ошеломлен - как будто онемел от удивления и удивления; «круг полицейских был ошеломлен ее отрицанием того, что она видела аварию»; «изумленные олдермены потеряли дар речи»; "был потрясен новостью о его повышении"

Синсеты, определения и примеры предложений получены напрямую из 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']

Is есть ли способ получить часть речи вместе с группой имен лемм?

13
задан Cœur 30 May 2018 в 17:10
поделиться