python3多次dump一次json的时候报JSONDecodeError: Extra data错

import json
data1 = {1:2, 3:4}
data = {1:3, 2:4}
with open('test.json', 'w') as f:

json.dump(data, f)

json.dump(data1, f)

with open('test.json', 'r') as f:

print(json.load(f))

对文件多次dump然后再一次load时, 就会报JSONDecodeError: Extra data错误, 求解

图片描述

json文件内容
图片描述

回答:

肯定会报错的啊,你json文件里面有多个对象,是无法解析的。要不你就自己把这些对象分开,然后再json.loads() 要不就存在不同的json文件里面


示例:

import json

d1 = {'1':2, '2':3, '3':4}

d2 = {'1':3, '2':4, '3':5}

with open('data.json', 'w') as f:

f.write(json.dumps(d1) + '\n' + json.dumps(d2)) # 用换行分开

# 读取时自己分开

with open('data.json', 'r') as f:

print(json.loads(f.readline()))

print(json.loads(f.readline()))

以上是 python3多次dump一次json的时候报JSONDecodeError: Extra data错 的全部内容, 来源链接: utcz.com/a/159494.html

回到顶部