将csv中的选定列转换为字典 [英] Convert selected columns in csv to dictionary
本文介绍了将csv中的选定列转换为字典的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个名为archive的csv文件。它作为一个读者打开。我想创建一个字典,其值(k,v)
由 {row [0] + row [2]:row [7] }
为csv文件中的每一行。必须有一个简单的直接方法将这个csv转换为一个字典,其中 k = row [0] + row [2]
和 v = row [7]
。
I have a csv file called "archive". It is opened as a reader. I wish to create a dictionary whose values (k,v)
are made from {row[0]+row[2]:row[7]}
for each row in the csv file. There must be a simple straight forward way to turn this csv into a dictionary where k = row[0]+row[2]
and 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
推荐答案
最简单的方法是使用字典理解:
The easiest way to do this is to use a dictionary comprehension:
arch_dict = {row[0]+row[2]: row[7] for row in archive}
重新使用旧版本的Python:
If you're on an older version of Python:
arch_dict = {}
for row in archive:
arch_dict[row[0]+row[2]] = rows[7]
这篇关于将csv中的选定列转换为字典的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文