python - 我如何才能可靠地访问一个太大而无法加载到内存中的 JSON 文件中的单个键值对?

标签 python python-3.x

我正在尝试从我的文件中检索人员的姓名。文件大小为 201GB

import json

with open("D:/dns.json", "r") as fh:
    for l in fh:
        d = json.loads(l)
        print(d["name"])

每当我尝试在 Windows 上运行这个程序时,我都会遇到内存错误,提示内存不足。

有没有一种可靠的方法可以在不加载整个文件的情况下解析单个键值对?我已经在脑海中分块阅读文件,但我不知道如何开始。

这是示例:test.json

每行由换行符分隔。希望这会有所帮助。

最佳答案

您可能想尝试一下 ijson:https://pypi.python.org/pypi/ijson

关于python - 我如何才能可靠地访问一个太大而无法加载到内存中的 JSON 文件中的单个键值对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43279923/

相关文章:

python - Tensorflow InvalidArgumentError : indices[40] = 2000 0 is not in [0, 20000)

python - 用于构建 TCP 服务器的良好 Python 网络库?

python - 有@staticmethod 和没有它的区别

python - 最新 python 更新后读取长路径(>256 个字符)的文件时出现问题

python - 在pycharm导入人脸识别时出现ImportError : DLL load failed: The specified module could not be found.

python - 如果一个字母出现多次,Hangman 会多次打印单词

python - 每 5 个空格后创建换行符

python - 如何对多列使用 OneHotEncoder 并自动为每列删除第一个虚拟变量?

python - 从失败的步骤暂停和恢复 Python 脚本

python - 从Python中的饼图中删除 "0%"标签