同义词和反义词
同义词和反义词作为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'])
关注微信小程序
扫描二维码
程序员编程王