如何删除换行符并将所有单词添加到列表中



我有一个包含4行的txt文件。(像一首诗)我想要的是把所有单词加到一个列表中。例如这首诗:

我受够你了,

不要再爱我了

我希望它是这样的:[‘我’,‘我’,‘做’,‘与’,‘你’,‘不’,‘爱’,‘我’,‘了’)

但是我不能删除第一个句子的行尾,它给了我两个分隔的列表。

romeo = open(r'd:romeo.txt')
list = []
for line in romeo:
line = line.rstrip()
line = line.split()
list = list + [line]
print(list)
with open(r'd:romeo.txt', 'r') as msg:
data = msg.read().replace("n"," ")
data = [x for x in data.split() if x.strip()]

更短:

with open(r'd:romeo.txt', 'r') as msg:
list = " ".join(msg.split()).split(' ')

或者去掉逗号:

with open(r'd:romeo.txt', 'r') as msg:
list = " ".join(msg.replace(',', ' ').split()).split(' ')

你可以像这样使用正则表达式。

import re
poem = '' # your poem
split = re.split(r'40|n', poem)
print(split)

正则表达式40用于空白,n用于匹配新行。

输出为:

['I', 'am', 'done', 'with', 'you,', "Don't", 'love', 'me', 'anymore']

最新更新