如果这是关于学习如何使用CSV文件的基本问题,请原谅我.
import csv
theReader = csv.reader(open('filename.csv'),delimiter=',')
for line in theReader:
print line
所以我设法打开文件,可以在我的屏幕上打印它.
但我正在尝试将数据捕获到词典中.
这是示例CSV:
Name,Age,Goals,Passes,Fouls
Ted,21,1,20,1
Ben,28,5,14,4
我现在需要创建一个带有标题的字典作为字典键(最好是跳过’name’),然后用字典值填充字典值.
然后,我将创建另一个具有名称的字典:日期(我手动添加的日期)作为键:值
我是否正确使用CSV mondule或者我应该通过标准文件类型执行此操作,并用逗号分隔行?
最佳答案
Python有一个内置的库,可以处理你的行作为字典.
它是DictReader而不是读者.
http://docs.python.org/release/3.1.3/library/csv.html#csv.DictReader
使用它,每一行都是字典而不是列表.
Python 3
from csv import DictReader
the_reader = DictReader(open('filename.csv','r'))
for line_dict in the_reader:
print(line_dict)
# {'Name': 'Ted','Age': '21','Goals': '1','Passes': '20','Fouls': '1'}
Python 2
在Python 2中,模式是’rb’.
the_reader = DictReader(open('filename.csv','rb'))