Wordnet中有一个关系,将反向连接
adjectives到
adverbs反向。
>>> from itertools import chain>>> from nltk.corpus import wordnet as wn>>> from difflib import get_close_matches as gcm>>> possible_adjectives = [k.name for k in chain(*[j.pertainyms() for j in chain(*[i.lemmas for i in wn.synsets('terribly')])])]['terrible', 'atrocious', 'awful', 'rotten']>>> gcm('terribly',possible_adjectives)['terrible']
一种更易
possible_adjective理解的计算方式如下:
possible_adj = []for ss in wn.synsets('terribly'): for lemmas in ss.lemmas: # all possible lemmas. for lemma in lemmas: for ps in lemma.pertainyms(): # all possible pertainyms. for p in ps: for ln in p.name: # all possible lemma names. possible_adj.append(ln)
编辑:在较新版本的NLTK中:
possible_adj = []for ss in wn.synsets('terribly'): for lemmas in ss.lemmas(): # all possible lemmas for ps in lemmas.pertainyms(): # all possible pertainyms possible_adj.append(ps.name())
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)