我有一个带有第一行学生姓名的csv文件,其他行是学生成绩:david,barack,jack 60,80,78 100,50,92
我想创建一个字典,其中包含键=学生姓名和值=平均成绩:{'david':80,'barack':65,'jack':85}
如果我要添加更多学生和/或成绩,我希望代码仍然有用。
你会怎么做?
谢谢
您可以执行以下操作。
import csv
f=open('nameofcsvfile.csv')
reader=csv.reader(f)
d={} #dict to store avg
c=0
name_list=[] #list to store students name
no_of_data=0
for line in reader:
if(c==0):
for j in line:
d[j]=0
name_list.append(j)
c+=1
else:
no_of_data+=1
k=0
for j in line:
d[name_list[k]]=d[name_list[k]]+int(j.strip())
k+=1
for keys in d:
d[keys]=d[keys]/no_of_data
print(d)
希望这可以帮助。
你可以这样做:
import pandas as pd
df = pd.read_csv("filename.csv")
dicts = {}
i=0
for name in df['Names']:
dicts[name] = df['Grades'][i]
i += 1
print(dicts)