Учебники

Python — синонимы и антонимы

Синонимы и антонимы доступны как часть wordnet, которая является лексической базой данных для английского языка. Он доступен как часть доступа корпорации NLTK. В 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))

Когда мы запускаем вышеуказанную программу, мы получаем следующий вывод: