我正在尝试将多个json文件合并为一个看起来像这样的文件:
file1: [[a,b],[c,d],[e,f]]
file2: [[g,h],[i,f],[k,l]]
file3: [[m,n],[o,p],[q,r]]
我正在使用以下代码合并文件:
data = []
for f in glob.glob("*.json"):
with open(f,) as infile:
data.append(json.load(infile))
with open("merged_file.json",'w') as outfile:
json.dump(data, outfile)
out: [[[a,b],[c,d],[e,f]],[[g,h],[i,f],[k,l]],[[m,n],[o,p],[q,r]]]
但是我真正需要的是这个
[[a,b],[c,d],[e,f],[g,h],[i,f],[k,l],[m,n],[o,p],[q,r]]
我需要将所有对都放在一个列表中,而不是使用单独的列表。
希望有人可以帮助我,加油!
答案 0 :(得分:1)
如果您确定在list
之后所有文件都变成json.load
,则可以替换:
data.append(json.load(infile))
使用
data.extend(json.load(infile))
应该产生预期的结果。