Python - WordNet-Schnittstelle

WordNet ist ein Wörterbuch für Englisch, ähnlich einem traditionellen Thesaurus. NLTK enthält das englische WordNet. Wir können es als Referenz verwenden, um die Bedeutung von Wörtern, Verwendungsbeispielen und Definitionen zu ermitteln. Eine Sammlung ähnlicher Wörter heißt Deckspelzen. Die Wörter in WordNet sind organisiert und Knoten und Kanten, wobei die Knoten den Worttext und die Kanten die Beziehungen zwischen den Wörtern darstellen. Im Folgenden sehen wir, wie wir das WordNet-Modul verwenden können.

Alle Lemmas

from nltk.corpus import wordnet as wn
res=wn.synset('locomotive.n.01').lemma_names()
print res

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe:

[u'locomotive', u'engine', u'locomotive_engine', u'railway_locomotive']

Wortdefinition

Die Wörterbuchdefinition eines Wortes kann unter Verwendung der Definitionsfunktion erhalten werden. Es beschreibt die Bedeutung des Wortes, wie wir sie in einem normalen Wörterbuch finden können.

from nltk.corpus import wordnet as wn
resdef = wn.synset('ocean.n.01').definition()
print resdef

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe:

a large body of water constituting a principal part of the hydrosphere

Anwendungsbeispiele

Wir können die Beispielsätze erhalten, die einige Verwendungsbeispiele der Wörter zeigen, die das verwenden exmaples() Funktion.

from nltk.corpus import wordnet as wn
res_exm = wn.synset('good.n.01').examples()
print res_exm

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe -

['for your own good', "what's the good of worrying?"]

Gegenteilige Wörter

Holen Sie sich alle entgegengesetzten Wörter mit der Antonyme-Funktion.

from nltk.corpus import wordnet as wn
# get all the antonyms
res_a = wn.lemma('horizontal.a.01.horizontal').antonyms()
print res_a

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe -

[Lemma('inclined.a.02.inclined'), Lemma('vertical.a.01.vertical')]