gpt4 book ai didi

python - 如何编写大型JSON数据?

转载 作者:行者123 更新时间:2023-11-28 19:11:42 26 4
gpt4 key购买 nike

我一直在尝试将大量(> 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。当我尝试更新或添加数据时,它需要很长时间。

我知道有外部库,例如 simplejsonjsonpickle ,我不太确定如何使用它们。

有没有其他方法可以解决这个问题?

更新:

我不确定这怎么可能是重复的,其他文章没有提到编写或更新大型 JSON 文件,而只说解析。

Is there a memory efficient and fast way to load big json files in python?

Reading rather large json files in Python

以上都没有解决这个问题的重复。他们没有说任何关于写作或更新的事情。

最佳答案

所以问题是你的手术时间很长。以下是我通常采用的几种方法:

  • 优化操作:这很少奏效。我不会推荐任何可以将 json 解析速度快几秒钟的一流库
  • 更改逻辑:如果目的是保存和加载数据,您可能想尝试其他方法,例如将对象存储到二进制文件中。
  • 线程和回调,或某些 Web 框架中的延迟对象。对于 web 应用,有时操作时间比请求等待的时间长,我们可以在后台进行操作(一些情况是:压缩文件,然后将 zip 发送到用户的电子邮件,通过调用另一个第三方的 api 发送短信。 ..)
  • 关于python - 如何编写大型JSON数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39339044/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com