【发布时间】:2018-01-06 17:15:03
【问题描述】:
使用csv 模块,我一直在尝试使用dictwriter 将列表中的信息传递/写入python 中的csv 文件,但我遇到了一个奇怪的错误,女巫将在实际代码下。我想知道是什么,代码中的错误,以及我们如何解决它。
import csv
names = ['kisha' ,'smith' , 'kishasmith@gmail.com', 40000 , '1-1-2029' ,'janitor' ]
with open('employees.csv' , 'w')as employee_file:
fieldnames2 = ['first' , 'last' , 'email' , 'salary' , 'DOB' , 'occupation']
csvwriter = csv.DictWriter(employee_file , fieldnames = fieldnames2 , delimiter = ',')
csvwriter.writeheader()
for info in names:
csvwriter.writerow(info)
我见过其他与此主题相关的问题,但修女适用于我。
错误:
Traceback (most recent call last):
File "C:\Users\Kxrk\Downloads\Codes\Employee project\new.py", line 10, in <module>
csvwriter.writerow(info)
File "C:\Users\Kxrk\AppData\Local\Programs\Python\Python36-32\lib\csv.py", line 155, in writerow
return self.writer.writerow(self._dict_to_list(rowdict))
File "C:\Users\Kxrk\AppData\Local\Programs\Python\Python36-32\lib\csv.py", line 148, in _dict_to_list
wrong_fields = rowdict.keys() - self.fieldnames
AttributeError: 'str' object has no attribute 'keys'
[Finished in 0.1s]
【问题讨论】:
-
names必须是字典列表。