簡體   English   中英

如何使用第一行作為鍵的csv文件創建dict

[英]How to create dict using csv file with first row as keys

我想創建一個從大型csv文件中讀取的字典列表,該文件使用第一行中的條目作為鍵。 例如,test.csv

Header1, Header2, Header3
A,       1,       10
B,       2,       20
C,       3,       30

結果dict看起來像:

MyList = [{'Header1': A, 'Header2': 1, 'Header3: 10}, {'Header1': B,     'Header2': 2, 'Header3: 20}, {'Header1': C, 'Header2': 3, 'Header3: 30}]

我知道如何讀取文件,並認為從集合中獲取defaultdict可能是一種好方法,但無法正確獲取語法。

這正是csv.DictReader用途。

import csv

with open('data.csv') as f:
    reader = csv.DictReader(f)
    for row in reader:
        print row

對於包含以下內容的data.csv

Header1,Header2,Header3
A,1,10
B,2,20
C,3,30

它打印:

{'Header2': '1', 'Header3': '10', 'Header1': 'A'}
{'Header2': '2', 'Header3': '20', 'Header1': 'B'}
{'Header2': '3', 'Header3': '30', 'Header1': 'C'}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM