python 中的词干词干

stemming words in python

我正在使用这段代码来词干,这是它的工作原理,首先是一个后缀列表,程序检查单词的结尾是否与列表中的相同,如果是肯定的,它会删除后缀,但是,当我 运行 代码时,我得到了这个结果:

suffixes = ['ing']
def stem(word):
for suff in suffixes:
    return word[:-len(suff)]

stem ('having')
print (stem)

对于给定列表中的每个后缀,您可以检查给定单词是否以任何给定后缀结尾,如果是,则删除后缀,否则 return 单词。

suffixes = ['ing']
def stem(word):
    for suff in suffixes:
        if word.endswith(suff):
            return word[:-len(suff)]

    return word

print(stem ('having'))
>>> hav

尝试查看 Porter Stemmer (http://tartarus.org/martin/PorterStemmer/),Python 有一个。