问题描述
使用 json.load() 时抛出异常。
代码重现
xxx
json.dump(data, open('file_path', 'w'))
xxx
json.load(open('file_path', 'r'))
问题分析
根本原因是json.dump(data, open('file_path', 'w'))
数据可能没有完全写入到文件,导致 json.load
的时候读取的时不完整的json数据。
解决办法
使用 with open() as f:
重写代码,正确关闭文件句柄,从而数据会完整写入文件。
xxx
with open('file_path', 'w') as f:
json.dump(data, f)
xxx
json.load(open('file_path', 'r'))