如何将缩进格式的 json 读入字典

how to read an indent-formatted json into a dictionary

我正在尝试读取一个 json 文件,该文件以人类可读的方式格式化,带有缩进和换行。像这样:

{
    "a":1, 
    "b":2, 
    "c":3
}{
    "d":4, 
    "e":5, 
    "f":6
}{
    "g":7, 
    "h":8, 
    "i":9
}

采用

的标准方式

json.load(file)

结果

JSONDecodeError: Extra data error

有人可以建议一种无需重新格式化原始文件即可阅读本文的方法吗?

假设您将文件的内容作为变量 contents。您应该能够将其转换为 json 可解码方式:

contents = "[" + contents.replace("}{", "},{") + "]"

然后做一个json.load。发生错误是因为每个数组元素之间没有逗号,并且数组周围没有括号。缩进格式与它无关; json.load 使用缩进。