我是Python的新手,我正尝试将从关系数据库提取的多个csv文件转换为Json文档。
我已经找到了将单个csv转换为json文档的代码,但是我想维护csv文件中的关系并根据该结构来构造我的Json文档
import csv
import json
input_file = 'Test3.csv'
output_file_template = 'Test.json'
with open(input_file, 'r', encoding='utf8') as csvfile:
reader = csv.DictReader(csvfile, delimiter=',')
rows = list(reader)
for i in range(len(rows)):
out = json.dumps(rows[1*i:1*(i+1)])
with open(output_file_template.format(i), 'w') as f:
f.write(out)
CSV1-学生详细信息
Studentid, Studentname, dob
001, Mark Johns, 21/04/2010
002, Jenny King, 20/01/2009
003, Steve Brown, 02/09/2010
CSV2-模块
Moduleid, Modulename
01, Maths
02, Science
03, Art
04, Geometry
CSV3-类详细信息
classid, classname
01, Goldfish room
02, Hawkins room
CSV4-时间表详细信息
moduleid1, classid, studentid
01, 01, 003
01, 01, 002
02, 02, 001
我要在以下结构中写入json文档:
"timetable details"
"header":{ "moduleid":, "locationid" },
"body": { "moduleid",
"Modules":{
"moduleid":,
"modulename":
},
"classid":,
"class details":{
"classid":,
"classname":
},
"studentid",
"studentdetails":{
"studentid":,
"studnetname":,
"dob":
}
}
答案 0 :(得分:0)
使用CSV reader将CSV文件解析为Python对象,从这些对象中创建具有所需格式的对象(如您的示例所示),然后使用JSON dump创建一个JSON格式的字符串,您可以{{3 }}