【发布时间】:2020-07-28 06:23:51
【问题描述】:
使用下面的json,它是最外层的对象数组,带有对象的进一步嵌套数组。
data = [{"a": [{"a1": [{"id0": [{"aa": [{"aaa": 97}, {"aab": "one"}], "ab": [{"aba": 97}, {"abb": ["one", "two"]}]}]}, {"id1": [{"aa": [{"aaa": 23}]}]}]}, {"a2": []}]}, {"b": [{"b1": [{"Common": [{"bb": [{"value": 4}]}]}]}]}]
我需要将其写入 csv(或 .xlsx 文件)
到目前为止我尝试了什么?
data_file = open('data_file.csv', 'w')
csv_writer = csv.writer(data_file)
for row in data:
csv_writer.writerow(row)
data_file.close()
这会给出一个空文件“data_file.csv”。
另外,我如何将标题添加到 CSV。我将标题存储在如下列表中
hdrs = ['Section', 'Subsection', 'pId', 'Group', 'Parameter', 'Value']
- 这对应于五个级别的键
预期的 CSV 输出
+---------+------------+--------+-------+-----------+----------+
| Section | Subsection | pId | Group | Parameter | Value |
+---------+------------+--------+-------+-----------+----------+
| a | a1 | id0 | aa | aaa | 97 |
| a | a1 | id0 | aa | aab | one |
| a | a1 | id0 | ab | aba | 97 |
| a | a1 | id0 | ab | abb | one, two |
| a | a1 | id1 | aa | aaa | 23 |
| a | a2 | | | | |
| b | b1 | Common | bb | value | 4 |
+---------+------------+--------+-------+-----------+----------+
【问题讨论】:
-
请发布您的 csv/excel 文件的输出 - 它应该是什么样子
-
用期望的 csv 格式更新了帖子
-
刚刚看了你的代码,发现你没有对数据做任何事情。这是一个嵌套的字典,你没有做任何预处理?