Мне нужно загрузить (десериализовать) предварительно вычисленный список целых чисел из файла в скрипте Python (в список Python). Список большой (до миллионов элементов), и я могу выбрать формат, в котором я его сохраню, если загрузка будет самой быстрой.
Какой способ самый быстрый и почему?
- Использование
importв файле .py, который просто содержит список, назначенный переменной - Используя
cPickle'sload - Другой метод (возможно
numpy?)
Кроме того, как можно надежно протестировать такие вещи?
Приложение: надежно измерить это затруднительно, потому что import кэшируется, поэтому его нельзя выполнить несколько раз в тесте. Загрузка с помощью pickle также ускоряется после первого раза, вероятно, из-за предварительного кеширования страниц ОС. Загрузка 1 миллиона номеров с cPickle занимает 1,1 секунды при первом запуске и 0,2 секунды при последующих запусках скрипта.
Интуитивно я чувствую, что cPickle должен быть быстрее, но я был бы признателен за цифры (я думаю, это довольно сложно измерить).
И да, для меня важно, чтобы это работало быстро.
Спасибо