将txt文件列细分为列表

时间:2018-08-06 16:51:11

标签: python list

我有多列且以逗号分隔的文本文件。

我正在尝试阅读并将每一列放入其自己的单独列表中,但我似乎做不到。

到目前为止我所做的:

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中,等等...

1 个答案:

答案 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)