如何用嵌套列表推导式简化NLTK Snowball词干提取的Python代码?
精简NLTK Snowball词干提取代码
可以将原有的循环逻辑完全整合为一行列表推导式,实现相同功能的同时大幅精简代码:
data_stemming = [' '.join(stemmer.stem(w) for w in word_tokenize(sentence)) for sentence in data] print(data_stemming)
代码说明
- 外层列表推导遍历输入列表
data中的每一个句子 - 对每个句子先执行
word_tokenize分词操作,再通过生成器表达式对每个分词应用stemmer.stem词干提取 - 最后用
' '.join()将词干化后的词汇重新拼接为完整句子,直接存入结果列表data_stemming
这段代码和你提供的原代码逻辑完全等价,输出结果与示例一致,同时去掉了冗余的中间变量和循环语句。
内容的提问来源于stack exchange,提问作者AB123
相关产品推荐
相关产品推荐

