同义词和反义词

同义词和反义词作为wordnet的一部分提供,wordnet是英语的词汇数据库。 它作为nltk corpora访问的一部分提供。 在wordnet中同义词是表示相同概念并且在许多上下文中可互换的单词,因此它们被分组为无序集(synsets)。 我们使用这些同义词来导出同义词和反义词,如下面的程序所示。

from nltk.corpus import wordnet

synonyms = []

for syn in wordnet.synsets("Soil"):
    for lm in syn.lemmas():
             synonyms.append(lm.name())
print (set(synonyms))

当运行上面的程序时,我们得到以下输出 -

set([grease', filth', dirt', begrime', soil', 
grime', land', bemire', dirty', grunge', 
stain', territory', colly', ground'])

为了获得反义词,只使用反义词函数。

from nltk.corpus import wordnet
antonyms = []

for syn in wordnet.synsets("ahead"):
    for lm in syn.lemmas():
        if lm.antonyms():
            antonyms.append(lm.antonyms()[0].name())

print(set(antonyms))

当运行上面的程序时,我们得到以下输出 -

set([backward', back'])

上一篇:删除停用词

下一篇:文本翻译

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程