Python - synonimy i antonimy

Synonimy i antonimy są dostępne jako część wordnet, będącej leksykalną bazą danych dla języka angielskiego. Jest dostępny w ramach dostępu do korpusów nltk. W wordnet Synonimy to słowa, które oznaczają to samo pojęcie i są wymienne w wielu kontekstach, tak że są pogrupowane w nieuporządkowane zbiory (synsety). Używamy ich do tworzenia synonimów i antonimów, jak pokazano w poniższych programach.

from nltk.corpus import wordnet
synonyms = []
for syn in wordnet.synsets("Soil"):
    for lm in syn.lemmas():
             synonyms.append(lm.name())
print (set(synonyms))

When we run the above program we get the following output −

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

To get the antonyms we simply uses the antonym function.

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))

When we run the above program, we get the following output −

set([backward', back'])