Bug: json.decoder.JSONDecodeError: Extra data: line 2 column 1 (char 235)
原因:json文件太大,json.load(f)导致的错误。
解决:按字符串的形式一行行的读取,然后利用 json.loads(line) 转化为json的格式来处理。
def read_json(data_path, stage, key_1, key_2):
iter, acc_seg = [], []
with open(data_path, 'r') as f:
# content = json.load(f) #报错
content = f.readlines()
for line in content:
if json.loads(line)["mode"] == stage:
iter.append(json.loads(line)[key_1])
acc_seg.append(json.loads(line)[key_2])
return iter, acc_seg