2013-10-24 24 views
0

我有一個字符串text,我想將它中的每個單詞詞彙化並將它們放在一起作爲一個字符串。我目前在做嘗試做這種方式:在列表理解過程中將變量傳遞給函數

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

但我得到的錯誤:

SyntaxError: invalid syntax 

我想我不會允許通過word到列表解析裏的函數。我有兩個問題:

1)爲什麼這是不允許的?

2)我怎樣才能用另一種方法做到這一點?

謝謝。

+0

它不應該是'text.split(」「)'? – Sudipta

+2

@Sudipta:'split'的默認值是以空格分割。 – BrenBarn

回答

3

錯誤是因爲您忘記了括號。無論是使用列表理解並將其傳遞給join

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

或只使用一臺發電機理解:

text = ' '.join(lmtzr.lemmatize(word) for word in text.split()) 
+0

後者應該是首選。 – Mattias