python如何将多重嵌套json数据转csv
时间: 2024-02-20 08:57:47 浏览: 273
将多重嵌套的JSON数据转换为CSV格式可以使用Python自带的csv和json库。
假设我们有以下多重嵌套的JSON数据:
```python
{
"name": "Tom",
"age": 18,
"address": {
"province": "Guangdong",
"city": "Shenzhen"
},
"scores": [
{
"subject": "Math",
"score": 90
},
{
"subject": "English",
"score": 85
}
]
}
```
我们可以使用以下示例代码将其转换为CSV格式:
```python
import csv
import json
# 读取JSON数据
with open('data.json', 'r') as f:
data = json.load(f)
# 打开CSV文件并写入表头
with open('data.csv', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerow(['name', 'age', 'province', 'city', 'subject', 'score'])
# 写入数据
for score in data['scores']:
writer.writerow([data['name'], data['age'], data['address']['province'], data['address']['city'], score['subject'], score['score']])
```
在上述代码中,我们首先使用 `json.load()` 方法读取JSON数据并将其解析为Python中的字典对象 `data`。接着,我们使用Python自带的csv库来将数据转换为CSV格式并写入文件。需要注意的是,由于JSON数据中包含了多层嵌套的数据,因此在写入CSV文件时需要将其展开为扁平的数据结构。在示例代码中,我们使用了一个for循环来依次将每个科目的成绩写入CSV文件中。
阅读全文