Python WordNet接口
WordNet是一部英语词典,类似于传统的同义词词典。NLTK包含了英语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']
词语定义
使用定义函数可以获得词语的字典定义。它描述了我们可以在一本普通字典中找到的词语的意思。
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
使用示例
我们可以使用 exmaples() 函数得到一些单词的使用示例句子。
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
# get all the antonyms
res_a = wn.lemma('horizontal.a.01.horizontal').antonyms()
print res_a
当我们运行上述程序时,我们得到以下输出 –
[Lemma('inclined.a.02.inclined'), Lemma('vertical.a.01.vertical')]