【发布时间】:2019-06-26 05:25:54
【问题描述】:
我正在尝试将文件夹中的 csv 文件转换为单个 json 文件。下面的代码完成了这项工作,但问题是,json 文件的第一个 csv 写入了多次。下面是我试过的代码。我想我在分配数据变量时出错了。帮我修一下
import csv, json, os
dir_path = 'C:/Users/USER/Desktop/output_files'
inputfiles = [file for file in os.listdir(dir_path) if file.endswith('.csv')]
outputfile = "data_backup1.json"
for file in inputfiles:
filepath = os.path.join(dir_path, file)
data = {}
with open(filepath, "r") as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
id = row['ID']
data[id] = row
with open(outputfile, "a") as jsonfile:
jsonfile.write(json.dumps(data, indent=4))
预期输出:Json 文件需要每个 csv 只写入一次。
【问题讨论】:
标签: json python-3.x csv