numpy.fromfile#
- numpy.fromfile(файл, dtype=float, count=-1, sep='', смещение=0, *, как=None)#
Создать массив из данных в текстовом или бинарном файле.
Высокоэффективный способ чтения двоичных данных с известным типом данных, а также разбора просто форматированных текстовых файлов. Данные, записанные с использованием tofile метод можно прочитать с помощью этой функции.
- Параметры:
- файлфайл или str или Path
Открытый файловый объект, строка, содержащая имя файла, или объект Path. При чтении из файлового объекта он должен поддерживать произвольный доступ (т.е. должен иметь методы tell и seek).
- dtypeтип данных
Тип данных возвращаемого массива. Для бинарных файлов используется для определения размера и порядка байтов элементов в файле. Поддерживаются большинство встроенных числовых типов, а также могут поддерживаться расширенные типы.
- countint
Количество элементов для чтения.
-1означает все элементы (т.е., полный файл).- sepstr
Разделитель между элементами, если файл является текстовым файлом. Пустой разделитель ("") означает, что файл должен обрабатываться как двоичный. Пробелы (" ") в разделителе соответствуют нулю или более пробельным символам. Разделитель, состоящий только из пробелов, должен соответствовать хотя бы одному пробельному символу.
- смещениеint
Смещение (в байтах) от текущей позиции файла. По умолчанию 0. Разрешено только для бинарных файлов.
- какarray_like, необязательный
Объект-ссылка, позволяющий создавать массивы, которые не являются массивами NumPy. Если массивоподобный объект, переданный как
likeподдерживает__array_function__протокол, результат будет определен им. В этом случае он гарантирует создание объекта массива, совместимого с переданным через этот аргумент.Новое в версии 1.20.0.
Смотрите также
load,savendarray.tofileloadtxtБолее гибкий способ загрузки данных из текстового файла.
Примечания
Не полагайтесь на комбинацию tofile и
fromfileдля хранения данных, так как создаваемые двоичные файлы не являются независимыми от платформы. В частности, не сохраняется информация о порядке байтов или типе данных. Данные могут храниться в независимом от платформы.npyформат с использованиемsaveиloadвместо этого.Примеры
Создайте ndarray:
>>> import numpy as np >>> 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', '
Сохранить сырые данные на диск:
>>> import tempfile >>> fname = tempfile.mkstemp()[1] >>> x.tofile(fname)
Прочитать исходные данные с диска:
>>> np.fromfile(fname, dtype=dt) array([((10, 0), 98.25)], dtype=[('time', [('min', '
Рекомендуемый способ хранения и загрузки данных:
>>> np.save(fname, x) >>> np.load(fname + '.npy') array([((10, 0), 98.25)], dtype=[('time', [('min', '