在python中合并json文件时出现的问题

在python中合并json文件时出现的问题,python,json,pandas,merge,Python,Json,Pandas,Merge,我试图用相同的头合并多个json文件。 我使用了其他帖子中讨论的代码,并对目标文件夹进行了如下调整: import glob result= [] filepath = 'D:/Football matters/Sttratagem data access/WYScout/trial data/MergeTest' all_header_files = glob.glob(filepath+'/*.json') for f in all_header_files:

我试图用相同的头合并多个json文件。 我使用了其他帖子中讨论的代码,并对目标文件夹进行了如下调整:

  import glob
  result= []
  filepath = 'D:/Football matters/Sttratagem data access/WYScout/trial data/MergeTest'
  all_header_files = glob.glob(filepath+'/*.json')

    for f in all_header_files:
        with open(f, "rb") as infile:
            result.append(json.load(infile))

    with open("merged_file.json", "wb") as outfile:
         json.dump(result, outfile)
当我循环它进行合并时,它显示了一些错误,如下所示:

  import glob
  result= []
  filepath = 'D:/Football matters/Sttratagem data access/WYScout/trial data/MergeTest'
  all_header_files = glob.glob(filepath+'/*.json')

    for f in all_header_files:
        with open(f, "rb") as infile:
            result.append(json.load(infile))

    with open("merged_file.json", "wb") as outfile:
         json.dump(result, outfile)
TypeError:需要类似字节的对象,而不是'str'

您可以下载示例文件

在我的例子中,我有100多个json文件要合并成一个。 有人能建议它如何合并吗

问候
Zep.

问题在于您对glob的使用。下面是它的用法示例

import glob
filepath = 'D:/Football matters/Sttratagem data access/WYScout/trialdata/MergeTest'
all_json_files = glob.glob(filepath+'/*.json')

现在,您可以像以前一样使用for循环来处理
所有的\u json\u文件

问题在于您对glob的使用。下面是它的用法示例

import glob
filepath = 'D:/Football matters/Sttratagem data access/WYScout/trialdata/MergeTest'
all_json_files = glob.glob(filepath+'/*.json')


您现在可以像以前一样使用for循环来处理
所有的json\u文件

是当前目录中的json文件吗?嗨,Vikrant,所有文件都在同一目录中。谢谢贴出的答案应该有用。它在读取文件时起作用。我在帖子中更新了我在合并文件时遇到的问题。请您建议?在
open()
调用中使用
r
w
模式,而不是二进制
rb
wb
是当前目录中的json文件?您好,所有文件都在同一目录中。谢谢贴出的答案应该有用。它在读取文件时起作用。我在帖子中更新了我在合并文件时遇到的问题。请您建议?在
open()
调用中使用
r
w
模式,而不是二进制
rb
wb
我更新了它。它在所有头文件中显示空值。你能更新你在问题中所做的更改吗?嗨,Anand,谢谢你的回答,我已经更新了。嗨,and,我想是因为在变量中分别分配了一个字符串。我直接插入目录。它向我显示了文件路径,包括names@Zephyr您必须合并filepath变量。查看更新的答案我更新了它。它在所有头文件中显示空值。你能更新你在问题中所做的更改吗?嗨,Anand,谢谢你的回答,我已经更新了。嗨,and,我想是因为在变量中分别分配了一个字符串。我直接插入目录。它向我显示了文件路径,包括names@Zephyr您必须合并filepath变量。查看更新的答案