我试图将字典写入csv文件,但出现错误:“参数1必须具有“写入”方法”。该词典包含与作者列表关联的键值。
with open('mycsvfile.csv', 'w', newline='') as csvfile:
fieldnames = ['BibCodes', 'Author 1', 'Author 2', 'Author 3']
writer = csv.DictWriter(csv, fieldnames=fieldnames)
writer.writeheader()
writer.writerows(ADSclassObj.authorDict)
print (csvfile)
答案 0 :(得分:1)
您的文件对象名为csvfile
,但是您正在将csv
模块传递给DictWriter
writer = csv.DictWriter(csv, fieldnames=fieldnames)
应该是
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
如果您只有一个字典,则应该使用writerow
-writerows
用于有可迭代或要写入的多个字典列表的情况:
writer.writerows(ADSclassObj.authorDict)
应该是
writer.writerow(ADSclassObj.authorDict)