numpy.fromfile
- numpy.fromfile(file, dtype=float, count=-1, sep='', offset=0, *, like=None)
-
Построение массива из данных в текстовом или двоичном файле.
Высокоэффективный способ чтения двоичных данных с известным типом данных, а также парсинга просто отформатированных текстовых файлов. Данные, записанные с помощью метода
tofile, могут быть прочитаны с помощью этой функции.- Параметры:
-
- filefile или str или Path
-
Открытый объект файла или имя файла.
Изменено в версии 1.17.0:
pathlib.Pathобъекты теперь принимаются. - dtypeтип данных
-
Тип данных возвращаемого массива. Для двоичных файлов используется для определения размера и порядка байтов элементов в файле. Поддерживаются большинство встроенных числовых типов, и могут поддерживаться расширенные типы.
Новое в версии 1.18.0: Комплексные типы данных.
- countint
-
Количество элементов для чтения.
-1означает все элементы (т.е. весь файл). - sepstr
-
Разделитель между элементами, если файл является текстовым. Пустой (“”) разделитель означает, что файл должен обрабатываться как двоичный. Пробелы (” “) в разделителе соответствуют нулю или более пробелам. Разделитель, состоящий только из пробелов, должен соответствовать по крайней мере одному пробелу.
- offsetint
-
Смещение (в байтах) от текущей позиции файла. По умолчанию равно 0. Разрешено только для двоичных файлов.
Новое в версии 1.17.0.
- likearray_like, необязательно
-
Объект-ссылка для создания массивов, которые не являются массивами NumPy. Если передаваемый в качестве
likeмассив-подобный объект поддерживает протокол__array_function__, результат будет определяться им. В этом случае гарантируется создание объекта массива, совместимого с передаваемым через этот аргумент.Новое в версии 1.20.0.
См. также
-
load,save ndarray.tofileloadtxt-
Более гибкий способ загрузки данных из текстового файла.
Замечания
Не полагайтесь на сочетание
tofileиfromfileдля хранения данных, так как сгенерированные двоичные файлы не являются независимыми от платформы. В частности, никакая информация о порядке байтов или типе данных не сохраняется. Данные могут быть сохранены в независимом от платформы формате.npyс помощьюsaveиloadвместо этого.Примеры
Построение массива ndarray:
>>> dt = np.dtype([('time', [('min', np.int64), ('sec', np.int64)]), ... ('temp', float)]) >>> x = np.zeros((1,), dtype=dt) >>> x['time']['min'] = 10; x['temp'] = 98.25 >>> x array([((10, 0), 98.25)], dtype=[('time', [('min', '<i8'), ('sec', '<i8')]), ('temp', '<f8')])Сохранение сырых данных на диске:
>>> import tempfile >>> fname = tempfile.mkstemp()[1] >>> x.tofile(fname)
Чтение сырых данных с диска:
>>> np.fromfile(fname, dtype=dt) array([((10, 0), 98.25)], dtype=[('time', [('min', '<i8'), ('sec', '<i8')]), ('temp', '<f8')])Рекомендуемый способ хранения и загрузки данных:
>>> np.save(fname, x) >>> np.load(fname + '.npy') array([((10, 0), 98.25)], dtype=[('time', [('min', '<i8'), ('sec', '<i8')]), ('temp', '<f8')])
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.fromfile.html