将字符串中的单词放入列表中



我是python的新手,我试图将字符串中的单词放入列表中,但是我遇到了麻烦。 这是它应该的样子:

输入:sentence = "abcde that i like."

输出:list_of_words = ['abcde', 'that', 'i', 'like.']

这是我尝试过的:

word = "" 
list_of_words = []
sentence = "abcde that i like."
for letter in sentence:
if letter != " ":
word += letter 
else:
list_of_words.append(word)
word = ""
print(list_of_words)

当我运行代码时,输出为:

['abcde', 'that', 'i']

我试图弄清楚为什么最后一个单词不包括在列表中。

你只需使用str.split()

>>> sentence = "abcde that i like."
>>> list_of_words = sentence.split()
>>> list_of_words
['abcde', 'that', 'i', 'like.']

如果你想在没有标点符号的情况下获得更好的结果,比如演示中的句点'.,你应该尝试正则表达式:

>>> import re
>>> re.findall(r'w+', sentence)
['abcde', 'that', 'i', 'like']

在这里阅读更多: re — 正则表达式操作 — Python 3.8.1 文档!

最新更新