我有一个大的json文件(6GB)
,其中包含简单的键和值对,例如
{ "0546585b451000" : "5",
"0546585b451000111222" : "10"
}
我正在使用ijson
解析此文件并对每个对象执行一些操作
我想在迭代完成后从json
文件本身删除每个对象。
with open(SOURCE_JSON_FILE, 'r') as fd:
parser = ijson.parse(fd)
for prefix, event, value in parser:
if event == 'number':
print('prefix={}, event={}, value={}'.format(prefix, event, value))
## Delete this row from json file now
我的目的是最小化实际json
文件的大小,以便万一在过程之间发生中断的情况下,我可以继续使用其余的键。
实现此目标的方法应该是什么?除了将完成的对象转储到另一个文件或数据库之外。
感谢帮助