все Python 3Файлы и I/Oпонятие
csv.DictReader
csv — чтение
Читатель CSV, отдающий каждую запись словарём: ключи берутся из первой строки (заголовка) или из параметра fieldnames.
Синтаксис
csv.DictReader(f, fieldnames=None, restkey=None, restval=None, dialect='excel')
Если в строке полей меньше, чем в заголовке, недостающие ключи получат None (или restval), а лишние значения соберутся списком под ключом None (или restkey) — легко не заметить испорченные данные. Если передать fieldnames, первая строка файла станет данными, а не заголовком. Значения, как и у reader, всегда строки; с 3.8 строки — обычные dict, а не OrderedDict.
Примеры
import csv
import io
buf = io.StringIO('name,age\nAnna,30\nBob\nCid,1,extra\n')
for row in csv.DictReader(buf):
print(row)
# → {'name': 'Anna', 'age': '30'} / {'name': 'Bob', 'age': None} / {'name': 'Cid', 'age': '1', None: ['extra']}
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности