Как Python прочитал этот двоичный файл быстрее во второй раз? - PullRequest
0 голосов
/ 19 февраля 2020

Я изучаю методы для чтения отформатированного двоичного файла и начинаю с основ:

>>> with open(fp, 'rb') as f:
        buffer = f.read()

Мой файл имеет размер 1,02 ГБ, и для его чтения и сохранения в памяти потребовалось ~ 90 секунд время. Случайно я сказал переводчику снова прочитать файл (слишком много раз нажал Enter), и он прочитал его за 0,5 секунды. Файл был закрыт до непреднамеренного повторного чтения.

Что здесь происходит?

Ответы [ 2 ]

5 голосов
/ 19 февраля 2020

Скорее всего, данные файла были кэшированы и все еще находятся в памяти. Большинство операционных систем оставляют данные в памяти на некоторое время, если их запрашивают снова.

1 голос
/ 19 февраля 2020

Второй раз ваш файл был кэширован в памяти. Это не имеет ничего общего с Python.

...