0

我有一个字符串text,我想对其中的每个单词进行 Lemmatize 并将其作为字符串重新组合在一起。我目前正在尝试这样做:

from nltk.stem.wordnet import WordNetLemmatizer
lmtzr = WordNetLemmatizer()
text = ' '.join[lmtzr.lemmatize(word) for word in text.split()]

但我收到错误:

SyntaxError: invalid syntax

我认为我不允许传入word列表理解中的函数。我有两个问题:

1)为什么不允许这样做?

2)我怎样才能用另一种方法做到这一点?

谢谢你。

4

1 回答 1

4

错误是因为您忘记了括号。要么使用列表理解并将其传递给join

text = ' '.join([lmtzr.lemmatize(word) for word in text.split()])

或者只使用生成器理解:

text = ' '.join(lmtzr.lemmatize(word) for word in text.split())
于 2013-10-24T07:18:07.080 回答