将csv中的选定列转换为字典

时间:2012-08-06 15:25:07

标签: python csv dictionary

我有一个名为“archive”的csv文件。它作为读者打开。我希望为csv文件中的每一行创建一个字符(k,v),其值为{row[0]+row[2]:row[7]}。必须有一个简单的直接方法将此csv转换为k = row[0]+row[2]v = row[7]的字典。

# open archive reader
farchive = open ("wv5archive.csv","rb")
archive = csv.reader(farchive, delimiter=',')

for rows in archive: 
    arch_dict = {rows[0]+rows[2]:rows[7]} 

print arch_dict 

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用词典理解:

arch_dict = {row[0]+row[2]: row[7] for row in archive}

如果您使用的是旧版本的Python:

arch_dict = {}
for row in archive: 
    arch_dict[row[0]+row[2]] = rows[7]