我有一个python
代码,用于将json
转换成csv
文件。
当我转换时,我可以看到特定的标题被打印在我不需要的连续列中
我的python代码:
import json, csv, datetime
f = open('cost_drilldown_data.json')
data = json.load(f)
s = csv.writer(open('cd23old.csv', 'w'))
s.writerow(["filter", "cost", "value", "cost", "subvalue", "cost", "time", "cost"])
for breakdown in data['breakdown']:
for time in data['time']:
for values in breakdown['values']:
if 'subvalues' in values:
for subvalues in values['subvalues']:
s.writerow([breakdown['filter'],
breakdown["cost"],
values['value'],
values['cost'],
subvalues["subvalue"],
subvalues["cost"],
time["time"][0]["time"],
time["cost"]]
)
else:
s.writerow([breakdown['filter'], "", "", values['value'], values['cost']])
My actual output in csv:
filter,cost,value,cost,subvalue,cost,time,cost tags,5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-16,112.793 tags,5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-17,112.748 tags,5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-18,112.739 tags,5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-19,107.165 account,628455167342,1613.508,, account,85f05078-74e0-4015-aad3-84ff7e111023,1341.397,, project_id,813,2954.905,, provider,aws,1613.508,, provider,azure,1341.397,,
BUT I EXPECT TO BE IS LIKE THIS:
filter,cost,value,cost,subvalue,cost,time,cost tags, 5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-16,112.793 5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-17,112.748 5517.734,Name,462.62,BizOps-VM-20,227.576,2017-05-18,112.739 account, 628455167342,1613.508, 628455167342,1613.508, provider ,aws,1613.508,, aws,1613.508,
我只想在左边的过滤器标题必须只打印一次。 我怎样才能做到这一点任何帮助感谢
目前没有回答
相关问题 更多 >
编程相关推荐