Чтение довольно больших файлов json в Python [дубликаты]
Possible Duplicate:
Is there a memory efficient and fast way to load big json files in python?
Так что у меня есть довольно большие файлы в формате JSON. Самый маленький - 300 МБ, но это, безусловно, самый маленький. Остальные - несколько ГБ, где-то от 2 ГБ до 10 ГБ +.
Кажется, у меня не хватает памяти при попытке загрузить файл с помощью Python. В настоящее время я просто провожу несколько тестов, чтобы примерно узнать, сколько времени потребуется, чтобы разобраться с этим материалом, чтобы узнать, куда идти дальше. Вот код, который я использую для проверки:
<code>from datetime import datetime import json print datetime.now() f = open('file.json', 'r') json.load(f) f.close() print datetime.now() </code>
Не удивительно, что Python дает мне MemoryError. Похоже, что json.load () вызывает json.loads (f.read ()), который пытается сначала выгружать весь файл в память, что явно не сработает.
В любом случае, я могу решить это чисто?
Я знаю, что это старое, но я не думаю, что это дубликат. Хотя ответ один и тот же, вопрос другой. В «дубликате» вопрос заключается в том, как эффективно читать большие файлы, тогда как этот вопрос касается файлов, которые вообще не помещаются в память. Эффективность не требуется.