Как создать список антонимов для прилагательных в WordNet с помощью Python

Я хочу сделать следующее в Python (у меня есть библиотека NLTK, но я не очень хорош с Python, поэтому я написал следующее В странном псевдокоде):

from nltk.corpus import wordnet as wn  #Import the WordNet library
for each adjective as adj in wn        #Get all adjectives from the wordnet dictionary
    print adj & antonym                #List all antonyms for each adjective 
once list is complete then export to txt file

Это, чтобы я мог создать полный словарь антонимов для прилагательных. Я думаю, что это должно быть выполнимо, но я не знаю как создать скрипт Python. Я хотел бы сделать это на Python, поскольку это родной язык NLTK.

1 ответов


from nltk.corpus import wordnet as wn

for i in wn.all_synsets():
    if i.pos() in ['a', 's']: # If synset is adj or satelite-adj.
        for j in i.lemmas(): # Iterating through lemmas for each synset.
            if j.antonyms(): # If adj has antonym.
                # Prints the adj-antonym pair.
                print j.name(), j.antonyms()[0].name()

обратите внимание, что будут обратные дубликаты.

[выход]:

able unable
unable able
abaxial adaxial
adaxial abaxial
acroscopic basiscopic
basiscopic acroscopic
abducent adducent
adducent abducent
nascent dying
dying nascent
abridged unabridged
unabridged abridged
absolute relative
relative absolute
absorbent nonabsorbent
nonabsorbent absorbent
adsorbent nonadsorbent
nonadsorbent adsorbent
absorbable adsorbable
adsorbable absorbable
abstemious gluttonous
gluttonous abstemious
abstract concrete
...