我在一个包含多行的文件中有一个文本。我想创建一个大的列表,每行作为一个单独的列表。在这些列表中,每个单词应该是一个字符串。这是我目前的代码,我很想在列表中拆分字符串。
['AB', 'EF']
{'AB', 'EF'}
这是输出:
f = open("test.txt","r")
for line in f.readlines():
line2= line.split(",")
print(line2)
f.close()
答案 0 :(得分:3)
你可以这样做:
with open('file.txt') as f:
out = [line.rstrip('\n').split(',') for line in f]
即。迭代文件对象(这是一个迭代器)的行,strip
离开最后一行的换行符,split
逗号行。
请注意,如果要从开始和结束中去掉空格,请改用line.strip()
。此外,默认情况下,文件将以rt
(读取文本)模式打开,因此您可以根据需要删除mode参数的显式声明。
修改强>
似乎你有空格分隔的单词,在这种情况下使用split()
:
with open('file.txt') as f:
out = [line.rstrip('\n').split() for line in f]
答案 1 :(得分:1)
这是一个单行代码。
[line.split(',') for line in Path('test.txt').open('r').read().split('\n')]