将多个json文件合并到一个python中

时间:2020-09-08 14:11:05

标签: python json

我正在尝试将多个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]]

我需要将所有对都放在一个列表中,而不是使用单独的列表。

希望有人可以帮助我,加油!

1 个答案:

答案 0 :(得分:1)

如果您确定在list之后所有文件都变成json.load,则可以替换:

data.append(json.load(infile))

使用

data.extend(json.load(infile))

应该产生预期的结果。