【发布时间】:2014-03-20 13:00:06
【问题描述】:
我正在尝试从 python 中的 csv 文件制作字典。假设 CSV 包含:
Student food amount
John apple 15
John banana 20
John orange 1
John grape 3
Ben apple 2
Ben orange 4
Ben strawberry 8
Andrew apple 10
Andrew watermelon 3
我所设想的是一个字典,其键是学生姓名和一个列表,作为每个条目对应于不同食物的值。 我必须计算第二列中独特食物的数量,这就是向量的长度。 例如:
The value of [15,20,1,3,0,0] would correspond to [apple, banana, orange, grape, strawberry, watermelon] for 'John'.
The value of [2,0,4,0,8,0] would correspond to [apple, banana, orange, grape, strawberry, watermelon] for 'Ben'.
The value of [10,0,0,0,0,3] would correspond to [apple, banana, orange, grape, strawberry, watermelon] for 'Andrew'
dict 的预期输出如下所示:
dict={'John':{[15,20,1,3,0,0]}, 'Ben': {[2,0,4,0,8,0]}, 'Andrew': {[10,0,0,0,0,3]}}
我在创建字典时遇到了麻烦,或者字典是否是正确的方法。我必须从什么开始:
import csv
data_file=open('data.csv','rU')
reader=csv.DictReader(data_file)
data={}
for row in reader:
data[row['Student']]=row
data_file.close()
感谢您花时间阅读。任何帮助将不胜感激。
【问题讨论】:
标签: python csv dictionary