Python – WordNet接口
WordNet是一本英语字典,类似于传统的词汇表,而NLTK则包含了英语的WordNet。我们可以将WordNet用作获取单词含义、用法示例和定义的参考。类似单词的集合被称为词形标识。WordNet的单词被组织成节点和边,其中节点代表单词文本,边代表单词之间的关系。下面我们将看到如何使用WordNet模块。
所有词形标识
from nltk.corpus import wordnet as wn
res=wn.synset('locomotive.n.01').lemma_names()
print res
当我们运行上面的程序时,我们将得到以下输出 –
[u'locomotive', u'engine', u'locomotive_engine', u'railway_locomotive']
单词定义
可以使用definition函数获得单词的词典定义。它描述单词的意思,就像我们可以在普通词典中找到一样。
from nltk.corpus import wordnet as wn
resdef = wn.synset('ocean.n.01').definition()
print resdef
当我们运行上述程序时,我们将得到以下输出 –
a large body of water constituting a principal part of the hydrosphere
使用示例
我们可以使用examples()函数获取显示单词用法示例的示例句子。
from nltk.corpus import wordnet as wn
res_exm = wn.synset('good.n.01').examples()
print res_exm
当我们运行上面的程序时,我们将得到以下输出 –
['for your own good', "what's the good of worrying?"]
对立词
使用反义词函数获取所有反义词。
from nltk.corpus import wordnet as wn
res_a = wn.lemma('horizontal.a.01.horizontal').antonyms()
print res_a
当我们运行上面的程序时,我们将得到以下输出 –
[Lemma('inclined.a.02.inclined'), Lemma('vertical.a.01.vertical')]