WordNet Interface

raw JSON →
1.1.0 verified Mon Apr 27 auth: no python

A pure Python interface to the WordNet lexical database, providing access to synsets, lemmas, and semantic relations. Current version 1.1.0, released in 2023, with occasional maintenance updates.

pip install wn
error ModuleNotFoundError: No module named 'wn'
cause The library 'wn' is not installed.
fix
Run 'pip install wn' to install.
error AttributeError: module 'wn' has no attribute 'WordNet'
cause Importing incorrectly: from wn import WordNet instead of import wn.
fix
Use 'import wn' and then 'wn.WordNet()'.
error ValueError: unknown lexicon 'omw-en'
cause The database 'omw-en' is not installed.
fix
Run 'wn install omw-en' or download it via programmatic method.
breaking In version 1.0.0, the API changed significantly. The old 'from wn import WordNet' pattern no longer works; use 'import wn' and instantiate wn.WordNet().
fix Change import from 'from wn import WordNet' to 'import wn' and replace 'WordNet()' with 'wn.WordNet()'.
deprecated The wn.download() function is deprecated; use wn.DB().install() or command-line tool 'wn install'.
fix Run 'wn install omw-en' in terminal or use 'wn.DB().install("omw-en")' in code.
gotcha WordNet database must be downloaded before first use. Calling synsets without downloading will raise an exception.
fix Run 'wn install omw-en' or 'wn.download("omw-en")' (deprecated) before querying.

Basic usage: import module, create WordNet instance, query synsets.

import wn

# Download the WordNet database (first run)
# wn.download('omw-en')

# Load a lexicon
wn = wn.WordNet()

# Get synsets for a word
synsets = wn.synsets('dog')
print(synsets)

# Get lemmas for a synset
for synset in synsets:
    print(synset.lemmas())