def parse_csv_file(thefile):
"""Parse csv file, yielding rows as dictionary.
The csv file should have an header.
Args:
thefile (file): File like object
Yields:
dict: Dictionary with column header name as key and cell as value
"""
reader = csv.reader(codecs.iterdecode(thefile, 'ISO-8859-1'))
# read header
colnames = next(reader)
# data rows
for row in reader:
pdb = {}
for k, v in zip(colnames, row):
if v is '':
v = None
pdb[k] = v
yield pdb
评论列表
文章目录