gpt4 book ai didi

python - writer.writeheader() - 无法识别在 header 中传递的字典的字段

转载 作者:太空宇宙 更新时间:2023-11-04 09:22:45 26 4
gpt4 key购买 nike

我正在使用以下代码使用 python 将传递给函数的字典写入 csv 文件

def addToLog(self,content):
filename = "myfile.csv"
fileds = content.keys()
print "Inside Add to Log"
print fileds
with open(filename,'w') as csvfile:
writer = csv.DictWriter(csvfile,fieldnames=fileds)
writer.writeheader()
writer.writerows(content)

在这里,我尝试使用字典函数动态获取字段列表,但是当我尝试执行上述文件时,出现以下错误。

ValueError: dict contains fields not in fieldnames: 'n', 'a', 'm', 'e'

但是上面函数中提到的打印时的按键如下:

['name', 'dob', 'gender', 'phone', 'email']

无法发现问题。

最佳答案

您正在尝试将单个字典写入文件。为此,请使用 DictWriter.writerow 而不是 DictWriter.writerows

这里发生的是 writerows(注意复数“s”)将尝试遍历 content 以写入每个元素,因为它假定您传递的内容in 是一个可迭代的字典。但是,如果您遍历单个字典,您将获得它的键,每个键都不是包含您在创建 DictWriter 时提到的字段名称的字典。

关于python - writer.writeheader() - 无法识别在 header 中传递的字典的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59300536/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com