从python中的CSV文件创建字典

2024-10-01 13:33:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下格式的csv文件:

age,name
3,abc
5,xyz
6,pqr
4,stu
8,lkm

我怎样才能把这个放在字典里,格式如下:

^{pr2}$

更新:

霉菌-

age_file = open('age.csv','r')
csv_age = csv.DictReader(age_file)

for row in csv_age:
    print(row)

OUTPUT:

{'age' : 3, 'name' : 'abc', 'age' : 5, 'name' : xyz, ... }

Tags: 文件csvnameage字典格式filerow
2条回答

我很懒,所以我用熊猫:

import pandas as pd
df = pd.read_csv('test.csv')
dd = {}
for ii, age in enumerate(df.age):
    dd[age] = df.name.iloc[ii]

但是,我同意上面的评论,即下次当相同的年龄作为键出现时,您将删除以前的条目,这些条目具有给定的年龄作为键。在

只是问题出在年龄和名字上。如果name/age是uniq,则可以使用:

import csv
my_result={}
with open('age.csv', 'rb') as csvfile:
     for age,name in csv.reader(csvfile, delimiter=','):
         my_result[age]=name

但我希望defaultdict更适合你使用。让它在一个年龄段拥有多个名字变得更加强大:

^{pr2}$

在这种情况下,结果将是: {1:[“鲍勃”,“约翰”],3:[“比尔”],6:[“乔治”,“莫妮卡”]}

相关问题 更多 >