词干列表中的单词(Python NLTK)

Stemming words in a list (Python NLTK)

我觉得我在这里做了一些非常愚蠢的事情,我试图阻止列表中的单词,但它没有给我预期的结果,我的代码是:

from nltk.stem.snowball import SnowballStemmer
snowball = SnowballStemmer(language="english")
my_words = ['works', 'shooting', 'runs']
for w in my_words:
    w=snowball.stem(w)
print(my_words)

我得到的输出是

['works', 'shooting', 'runs]

相对于

['work','shoot','run']

我觉得我对我的列表做了一些非常愚蠢的事情,但是谁能告诉我我做错了什么?

傻我,

我刚刚在里面创建了一个新列表并附加到它以给出预期的结果:

from nltk.stem.snowball import SnowballStemmer
snowball = SnowballStemmer(language="english")
new_list=[]
my_words = ['works', 'shooting']
for w in my_words:
    w=snowball.stem(w)
    new_list.append(w)
print(new_list)

您可以使用列表理解:

[snowball.stem(word) for word in my_words]