我有多列且以逗号分隔的文本文件。
我正在尝试阅读并将每一列放入其自己的单独列表中,但我似乎做不到。
到目前为止我所做的:
with open(file, 'r') as file_test:
file_lines = file_test.readlines()
file_strip = [line.strip("\n") for line in file_lines]
#I've split big list into separate lists within `file_strip`
file_columns= [file_strip [i:i + 1] for i in range(0, len(file_strip ), 1)][2:]
所以现在我的数据如下:
[['22AUG18 000000, 22AUG18 000149, 5.722, UOS2'], ['22JUL18 012703, 22JUL18 013810, 52.2811, UOS2']]
我也不知道如何消除每个列表开头和结尾的'
我希望每个列表中的第一个元素位于List1
中,每个列表中的第二个元素位于List2
中,等等...
答案 0 :(得分:3)
为什么不使用csv
模块?它旨在完成您想做的事情!
import csv
with open(file, 'r') as file_test:
csv_test = csv.reader(file_test)
for row in csv_test:
print(row)
将打印
['22AUG18 000000', '22AUG18 000149', '5.722', 'UOS2']
['22JUL18 012703', '22JUL18 013810', '52.2811', 'UOS2']
如果要在列表中将其分开,可以对其进行zip():
with open(file, 'r') as file_test:
csv_test = csv.reader(file_test)
list1, list2, list3, list4 = zip(*csv_test)