Python DictWriter()的错误参数
我正在尝试将JSON写入csv:Python DictWriter()的错误参数,python,csv,Python,Csv,我正在尝试将JSON写入csv: with open('data.csv', 'w') as output_file: print 'output:', output_file output = csv.DictWriter(output_file, order_fields = sorted(fieldnames), restval = '') output.writeheader() output.writerow() 获取此
with open('data.csv', 'w') as output_file:
print 'output:', output_file
output = csv.DictWriter(output_file, order_fields = sorted(fieldnames), restval = '')
output.writeheader()
output.writerow()
获取此错误:
File "process_json.py", line 16, in main
output = csv.DictWriter(output_file, order_fields = sorted(fieldnames), restval = '')
TypeError: __init__() takes at least 3 arguments (3 given)
如果不是这些参数,我应该传递哪些参数?如果您查看:
您将看到您忘记传递fieldnames
参数。实际上,您传递了3个参数(包括self
,因为它是一个类),但您忘记了第二个参数,这是必需的。我认为这不是您所指的
order\u fields
,而是fieldnames
,因此您不需要将其设置为位置参数:
output = csv.DictWriter(output_file, sorted(fieldnames), restval = '')
output = csv.DictWriter(output_file, sorted(fieldnames), restval = '')