Я пытаюсь загрузить большой файл (размером 2 ГБ), заполненный строками JSON, ограниченный символами новой строки. Пример:
{
"key11": value11,
"key12": value12,
}
{
"key21": value21,
"key22": value22,
}
…
Теперь я импортирую его:
content = open(file_path, "r").read()
j_content = json.loads("[" + content.replace("}\n{", "},\n{") + "]")
Кажется, что это взлом (добавление запятых между каждой строкой JSON, а также начало и конец квадратной скобки, чтобы сделать его правильным).
Есть ли лучший способ указать разделитель JSON (newline \n
вместо запятой ,
)?
Кроме того, Python
не может правильно отображать память для объекта, построенного из 2 ГБ данных, есть ли способ построить каждый объект JSON
, поскольку я читаю файл по строкам? Спасибо!