📅  最后修改于: 2023-12-03 14:53:49.067000             🧑  作者: Mango
有时候我们需要将多个 JSON 文件合并并转换为 CSV 文件,以便进行后续数据分析等操作。下面我们将介绍如何使用 Python 实现该功能。
确定需要合并的 JSON 文件路径,并导入必要的模块。
import json
import csv
import os
paths = ['file1.json', 'file2.json', 'file3.json'] # 需要合并的 JSON 文件路径
遍历每个 JSON 文件,将其转换为 Python 中的字典对象,并添加到列表中。
data = []
for path in paths:
with open(path, 'r', encoding='utf-8') as f:
json_data = json.load(f)
data.extend(json_data) # 将字典对象添加到列表中
将字典列表转换为 CSV 文件,确定 CSV 文件路径并导入必要的模块。
csv_path = 'merged_data.csv' # CSV 文件路径
with open(csv_path, 'w', newline='', encoding='utf-8') as f:
writer = csv.DictWriter(f, fieldnames=data[0].keys()) # 创建 writer 对象
writer.writeheader() # 写入表头
writer.writerows(data) # 写入数据
完整代码如下:
import json
import csv
import os
paths = ['file1.json', 'file2.json', 'file3.json'] # 需要合并的 JSON 文件路径
data = []
for path in paths:
with open(path, 'r', encoding='utf-8') as f:
json_data = json.load(f)
data.extend(json_data) # 将字典对象添加到列表中
csv_path = 'merged_data.csv' # CSV 文件路径
with open(csv_path, 'w', newline='', encoding='utf-8') as f:
writer = csv.DictWriter(f, fieldnames=data[0].keys()) # 创建 writer 对象
writer.writeheader() # 写入表头
writer.writerows(data) # 写入数据
此时,我们已经成功将多个 JSON 文件转换为 CSV 文件,可以随时对数据进行后续分析或处理。
本文介绍了如何使用 Python 将多个 JSON 文件合并并转换为 CSV 文件。具体步骤如下:
确定需要合并的 JSON 文件路径,并导入必要的模块。
遍历每个 JSON 文件,将其转换为 Python 中的字典对象,并添加到列表中。
将字典列表转换为 CSV 文件,确定 CSV 文件路径并导入必要的模块。
需要注意的是,当 JSON 文件比较大时,可能需要进行分段读取和写入以避免内存不足等问题。