Python将多个单词的列表转换为单个单词

时间:2015-05-06 19:17:59

标签: python nlp nltk

我有一个单词列表,例如:

words = ['one','two','three four','five','six seven']#quote缺失

我正在尝试创建一个新列表,其中列表中的每个项目只有一个单词,所以我会:

words = ['one','two','three','four','five','six','seven']

最好的做法是将整个列表加入字符串然后对字符串进行标记化吗?像这样:

word_string = ' '.join(words) tokenize_list = nltk.tokenize(word_string)

或者有更好的选择吗?

3 个答案:

答案 0 :(得分:10)

words = ['one','two','three four','five','six seven']

循环:

words_result = []
for item in words:
    for word in item.split():
        words_result.append(word)

或理解:

words = [word for item in words for word in item.split()]

答案 1 :(得分:9)

您可以使用空格分隔符进行连接,然后再次拆分:

@Qualifier

答案 2 :(得分:1)

这是一个轻微使用正则表达式的解决方案:

import re

words = ['one','two','three four','five','six seven']
result = re.findall(r'[a-zA-Z]+', str(words))