Der Code, um die Synonyme eines Wortes in Python zu erhalten, lautet:
%Vor%Aber dog.n.02 gibt andere Wörter. Für irgendwelche Wörter kann ich nicht wissen, wie viele Wörter es möglicherweise gibt. Wie kann ich alle Synonyme für ein Wort zurückgeben?
Die Verwendung von wn.synset('dog.n.1').lemma_names
ist der richtige Weg, um auf die Synonyme eines Sinnes zuzugreifen. Weil ein Wort viele Sinne hat und es sinnvoller ist, Synonyme einer bestimmten Bedeutung / Bedeutung aufzulisten. Um Wörter mit ähnlichen Bedeutungen aufzählen zu können, können Sie möglicherweise auch die Hyponyme betrachten.
Leider ist die Größe von Wordnet sehr begrenzt, so dass nur sehr wenige Lemma_Namen für jeden Sinn verfügbar sind.
Die Verwendung von Wordnet als Wörterbuch / Thesarus ist per se nicht sehr geeignet, weil es als ein Inventar von Sinn / Bedeutung und nicht als Inventar von Wörtern entwickelt wurde. Sie können jedoch einen bestimmten Sinn und mehrere (nicht sehr viele) verwandte Wörter für den Sinn verwenden. Man kann Wordnet als:
verwendenWörterbuch: ein Wort gegeben, was ist die unterschiedliche Bedeutung des Wortes
%Vor%Thesarus: ein Wort gegeben, was sind die verschiedenen Wörter für jede Bedeutung des Wortes
%Vor%Ontologie: bei einem Wort, was sind die Hyponyme (d. h. Subtypen) und Hypernyms (d. h. Supertypen).
%Vor%[Ontologieausgabe]
%Vor%Hinweis diese andere Antwort :
%Vor%Beachten Sie, dass Sie in Ihrem Code versucht haben, die Lemmas zu bekommen, aber das ist eine Ebene zu tief für das, was Sie wollen. Bei der synset-Ebene geht es um Bedeutung, während die Lemma-Ebene Wörter enthält. Mit anderen Worten :
In WordNet (und ich spreche hier von Englisch WordNet, obwohl ich denke die in anderen Sprachen sind ähnlich organisiert) hat ein Lemma Sinne. Insbesondere ein Lemma (dh eine Basiswortform, die indexiert in WordNet) hat genau so viele Sinne wie die Anzahl der synsets, an denen es teilnimmt. Umgekehrt, und wie Sie sagen, synsets enthält noch mehr Lemmas, was bedeutet, dass mehrere Lemmas (Wörter) kann denselben Sinn oder dieselbe Bedeutung repräsentieren.
Sehen Sie sich auch die NLTK-WordNet-Anleitungen für einige weitere Möglichkeiten an um eine Bedeutung oder ein Wort zu erkunden.