【发布时间】:2020-12-25 11:31:02
【问题描述】:
- 我想获取 JSON 文件中的最后一个元素
- 这个文件很大,所以我不想把它加载到内存中(使用json.loads)
- 很高兴使用 ijson 或 jsonparser 之类的东西,但不知道如何使用这些解析器。
假设我的 JSON 文件如下所示:
{
"1000045901": "John",
"1000045902": "Ben"
}
我想编写 python 代码来帮助我获取最后一项 ("1000045902": "Ben") -- 包括它的键和它的值 -- 所有 没有将文件加载到内存中。
我最接近的方法是使用 ijson:
import ijson
key = '-'
with open('customerAccounts.json', 'rb') as file:
for prefix, event, value in ijson.parse(file):
if prefix == '' and event == 'end_map'
print ([key, value][-1])
然而,我的输出返回 end_map 值,即None
【问题讨论】:
标签: python python-3.x