Initial commit
This commit is contained in:
52
venv/lib/python3.7/site-packages/nltk/stem/wordnet.py
Normal file
52
venv/lib/python3.7/site-packages/nltk/stem/wordnet.py
Normal file
@@ -0,0 +1,52 @@
|
||||
# Natural Language Toolkit: WordNet stemmer interface
|
||||
#
|
||||
# Copyright (C) 2001-2019 NLTK Project
|
||||
# Author: Steven Bird <stevenbird1@gmail.com>
|
||||
# Edward Loper <edloper@gmail.com>
|
||||
# URL: <http://nltk.org/>
|
||||
# For license information, see LICENSE.TXT
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from nltk.corpus.reader.wordnet import NOUN
|
||||
from nltk.corpus import wordnet
|
||||
from nltk.compat import python_2_unicode_compatible
|
||||
|
||||
|
||||
@python_2_unicode_compatible
|
||||
class WordNetLemmatizer(object):
|
||||
"""
|
||||
WordNet Lemmatizer
|
||||
|
||||
Lemmatize using WordNet's built-in morphy function.
|
||||
Returns the input word unchanged if it cannot be found in WordNet.
|
||||
|
||||
>>> from nltk.stem import WordNetLemmatizer
|
||||
>>> wnl = WordNetLemmatizer()
|
||||
>>> print(wnl.lemmatize('dogs'))
|
||||
dog
|
||||
>>> print(wnl.lemmatize('churches'))
|
||||
church
|
||||
>>> print(wnl.lemmatize('aardwolves'))
|
||||
aardwolf
|
||||
>>> print(wnl.lemmatize('abaci'))
|
||||
abacus
|
||||
>>> print(wnl.lemmatize('hardrock'))
|
||||
hardrock
|
||||
"""
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def lemmatize(self, word, pos=NOUN):
|
||||
lemmas = wordnet._morphy(word, pos)
|
||||
return min(lemmas, key=len) if lemmas else word
|
||||
|
||||
def __repr__(self):
|
||||
return '<WordNetLemmatizer>'
|
||||
|
||||
|
||||
# unload wordnet
|
||||
def teardown_module(module=None):
|
||||
from nltk.corpus import wordnet
|
||||
|
||||
wordnet._unload()
|
||||
Reference in New Issue
Block a user