读取CSV文件,直到python中出现空行并放入字典中

时间:2013-12-18 06:54:12

标签: python csv dictionary

我有一个包含以下格式的CSV文件:

Test header
a,4955402-RX,b,m130301110
c,2839134,d,2013 03 01 12:10:53
e,,f,Pallet9
g,3.75-2,h,
i,1,j,T71
k,PASS
l,22222222222222222222222

Test Data 
Some values 

我想读取标题部分并将Header上的键值对放到字典中。请分享您的想法。提前谢谢。

3 个答案:

答案 0 :(得分:1)

其他人已经谈到了csv,所以我会在这里真的很低技术

answer = {}
with open('myFile.csv') as infile:
    infile.readline()  # ignore the header line
    for line in infile:
        k1,v1,k2,v2 = line.strip().split(',')
        answer[k1] = v1
        answer[k2] = v2

答案 1 :(得分:0)

您可以查看:csv.DictReader

答案 2 :(得分:0)

标准CSV格式没有“标题”行的表示。因此,您的“CSV”数据将需要自定义阅读器,或者您必须使用标准CSV阅读器并自行处理行数据以处理标题。

python csv reader对您非常有帮助。

建立标题行格式为HEADER, <header-name>

的约定
import csv
header = 'None'
datastore = {}
with open('some.csv', 'rb') as f:
    reader = csv.reader(f)
    for row in reader:
        if row[0] == 'HEADER':
            header = row[1]
        elif:
            datastore[header] = datastore[header] or []
            datastore[header] += row