我一直在尝试将大量(> 800mb)的数据写入 JSON 文件;我做了一些相当数量的试验和错误来得到这个代码:
def write_to_cube(data):
with open('test.json') as file1:
temp_data = json.load(file1)
temp_data.update(data)
file1.close()
with open('test.json', 'w') as f:
json.dump(temp_data, f)
f.close()
要运行它,只需调用函数
write_to_cube({"some_data" = data})
现在这段代码的问题是,对于少量数据来说速度很快,但是问题出现在
test.json
的时候文件中有超过 800mb。当我尝试更新或添加数据时,它需要很长时间。我知道有外部库,例如
simplejson
或 jsonpickle
,我不太确定如何使用它们。有没有其他方法可以解决这个问题?
更新:
我不确定这怎么可能是重复的,其他文章没有提到编写或更新大型 JSON 文件,而只说解析。
Is there a memory efficient and fast way to load big json files in python?
Reading rather large json files in Python
以上都没有解决这个问题的重复。他们没有说任何关于写作或更新的事情。
最佳答案
所以问题是你的手术时间很长。以下是我通常采用的几种方法:
关于python - 如何编写大型JSON数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39339044/