Python 从csv到dict的读取

Python 从csv到dict的读取,python,csv,dictionary,Python,Csv,Dictionary,假设我有这个csv文件: Header1, Header2, Header3 key1, 1, 2 key2, 3, 4 我想把它转换成下面的格言: {Header2: {key1: 1, key2: 3}, Header3: {key1: 2, key2: 4}} 有没有一个简单的方法可以做到这一点? 我尝试使用csv DictReader或pandas,但没有找到简单的方法,尽管在我看来这是一个常见的用例。您可以使用来记录pandas的DataFram

假设我有这个csv文件:

Header1, Header2, Header3
key1,    1,       2
key2,    3,       4
我想把它转换成下面的格言:

{Header2: {key1: 1, key2: 3}, Header3: {key1: 2, key2: 4}}
有没有一个简单的方法可以做到这一点?
我尝试使用csv DictReader或pandas,但没有找到简单的方法,尽管在我看来这是一个常见的用例。

您可以使用
来记录pandas的DataFrame实例的方法。例如:

import pandas as pd
df = pd.read_csv('file.csv', delimiter=r',\s+', index_col=0)
print(df.to_dict())

您可以使用
csv
模块执行此操作:

import csv 

f = open(csv_file_path)
reader = csv.DictReader(f)

fieldnames = reader.fieldnames
result = {fieldname:{} for fieldname in fieldnames[1:]}
for row in reader:
    for fieldname in fieldnames[1:]:
        result[fieldname][row['Header1'].strip()] = row[fieldname].strip()