如何使用冒号分隔符从Python中读取文本文件中的数据

时间:2015-08-14 16:12:44

标签: python io

假设我有一个包含以下数据的文本文件:

data1:data2
data1:data2
data1:data2
data1:data2

我想将这些数据拆分为两个独立的数组。一个数组包含冒号左侧的数据,另一个数组包含右侧的数据。

最有效的方法是什么?

2 个答案:

答案 0 :(得分:4)

最简单的方法就是将冒号上的每一行拆分并附加到两个单独的数组

示例:

infile = open(listfile,'r')
filecontent = infile.readlines()
infile.close()
array1 = []
array2 = []
for line in filecontent:
    tmp = line.strip().split(':')
    array1.append(tmp[0])
    array2.append(tmp[1])

答案 1 :(得分:1)

一些列表推导可以很容易地做到这一点。

with open(filename) as f:
    lists = [line.strip().split(':') for line in f.readlines()]
listOne = [line[0] for line in lists]
listTwo = [line[1] for line in lists]

存储lists然后将其分开可以节省两次读取整个文件的时间。