입력 텍스트 파일에서 단어를 가져 와서 WordNet을 사용하여 단어의 동의어, 정의 및 예문을 인쇄하는 다음 코드가 있습니다. 이것은 품사에 기초한 동의어, 즉 동사 인 동의어와 형용사 인 동의어를 분리하여 인쇄한다.단어의 동의어와 함께 품사 인쇄하기
flabbergasted라는 단어의 예는 1) flabbergast, boggle, 동사는 그릇, 2) dumbfounded, dumfounded, flabbergasted, stupefied, thunderstruck, dumbstrck, dumbstricken은 형용사입니다.
동의어와 함께 품사체를 어떻게 인쇄합니까?
import nltk
from nltk.corpus import wordnet as wn
tokenizer = nltk.data.load('tokenizers/punkt/english.pickle')
fp = open('sample.txt','r')
data = fp.read()
tokens= nltk.wordpunct_tokenize(data)
text = nltk.Text(tokens)
words = [w.lower() for w in text]
for a in words:
print a
syns = wn.synsets(a)
for s in syns:
print
print "definition:" s.definition
print "synonyms:"
for l in s.lemmas:
print l.name
print "examples:"
for b in s.examples:
print b
print
pos 함수를 사용하면 다음과 같은 오류가 발생합니다. lemma.synset.pos AttributeError : 'function'객체에 'pos'속성이 없습니다. –
메모 주셔서 감사합니다. 이 대답을 쓴 이후로 NLTK API가 변경되었습니다. 이 답변을 업데이트 할 시간을 갖습니다. –
당신은 저에게 synset과 함께 보조 정리를 사용하여 pos를 줄 수있는 함수를 말할 수 있습니까? –