我试图基本上采用包含句子的字符串列表,例如:
sentence = ['Here is an example of what I am working with', 'But I need to change the format', 'to something more useable']
并将其转换为以下内容:
word_list = ['Here', 'is', 'an', 'example', 'of', 'what', 'I', 'am',
'working', 'with', 'But', 'I', 'need', 'to', 'change', 'the format',
'to', 'something', 'more', 'useable']
我试过用这个:
for item in sentence:
for word in item:
word_list.append(word)
我认为它会占用每个字符串并将该字符串的每个项目附加到word_list,但输出的内容如下:
word_list = ['H', 'e', 'r', 'e', ' ', 'i', 's' .....etc]
我知道我犯了一个愚蠢的错误,但我无法弄明白为什么,有人可以帮忙吗?
答案 0 :(得分:13)
您需要str.split()
将每个字符串拆分为单词:
word_list = [word for line in sentence for word in line.split()]
答案 1 :(得分:8)
只需.split
和.join
:
word_list = ' '.join(sentence).split(' ')
答案 2 :(得分:2)
你还没有告诉它如何区分一个单词。默认情况下,遍历字符串只是遍历字符。
您可以使用.split(' ')
按空格分割字符串。所以这会奏效:
for item in sentence:
for word in item.split(' '):
word_list.append(word)
答案 3 :(得分:1)
for item in sentence:
for word in item.split():
word_list.append(word)
答案 4 :(得分:-1)
将句子分成单词:
print(sentence.rsplit())