26 lines
499 B
Markdown
26 lines
499 B
Markdown
# Exercise 2.6 - Solution
|
|
|
|
```python
|
|
# reader.py
|
|
|
|
import csv
|
|
from collections import defaultdict
|
|
|
|
def read_csv_as_dicts(filename, types):
|
|
'''
|
|
Read a CSV file with column type conversion
|
|
'''
|
|
records = []
|
|
with open(filename) as f:
|
|
rows = csv.reader(f)
|
|
headers = next(rows)
|
|
for row in rows:
|
|
record = { name: func(val) for name, func, val in zip(headers, types, row) }
|
|
records.append(record)
|
|
return records
|
|
```
|
|
|
|
|
|
|
|
[Back](ex2_6.md)
|