1 回答

TA貢獻1712條經驗 獲得超3個贊
默認情況下,csv.DictReader使用第一行并將其用作標題行,用作表示行的字典中的鍵。
如果您的第一行不應被視為標題行,則應將fieldnames參數作為標題列表提供。
如果您根本不想使用標題,只需使用csv.reader相反(它將每行作為元組而不是字典發出)。
例如,使用此文件:
a,b,c
d,e,f
g,h,i
注意區別:
with open('test.csv') as f:
reader = csv.DictReader(f)
for row in reader:
print(row)
輸出
OrderedDict([('a', 'd'), ('b', 'e'), ('c', 'f')])
OrderedDict([('a', 'g'), ('b', 'h'), ('c', 'i')])
盡管
with open('test.csv') as f:
reader = csv.DictReader(f, fieldnames=['1', '2', '3'])
for row in reader:
print(row)
輸出
OrderedDict([('1', 'a'), ('2', 'b'), ('3', 'c')])
OrderedDict([('1', 'd'), ('2', 'e'), ('3', 'f')])
OrderedDict([('1', 'g'), ('2', 'h'), ('3', 'i')])
添加回答
舉報