在类似的用例中,我不得不在实际列名所在的行之前跳过恼人的行。这个解决方案很有效。先读取文件,然后将列表传递给 csv.DictReader .
csv.DictReader
with open('all16.csv') as tmp: # Skip first line (if any) next(tmp, None) # {line_num: row} data = dict(enumerate(csv.DictReader(tmp)))