numpy.rec.fromstring#

rec.fromstring(datastring, dtype=None, shape=None, смещение=0, форматы=None, names=None, заголовки=None, aligned=False, byteorder=None)[источник]#

Создать запись массива из двоичных данных

Обратите внимание, что, несмотря на название этой функции, она не принимает str экземпляров.

Параметры:
datastringbytes-like

Буфер двоичных данных

dtypeтип данных, опционально

Допустимый dtype для всех массивов

shapeint или кортеж ints, опционально

Форма каждого массива.

смещениеint, необязательный

Позиция в буфере для начала чтения.

форматы, имена, заголовки, выровненные, порядок байтов

Если dtype является None, эти аргументы передаются в numpy.format_parser для создания dtype. См. документацию этой функции для подробностей.

Возвращает:
np.recarray

Представление массива записей в данных в datastring. Это будет только для чтения, если datastring только для чтения.

Смотрите также

numpy.frombuffer

Примеры

>>> a = b'\x01\x02\x03abc'
>>> np.rec.fromstring(a, dtype='u1,u1,u1,S3')
rec.array([(1, 2, 3, b'abc')],
        dtype=[('f0', 'u1'), ('f1', 'u1'), ('f2', 'u1'), ('f3', 'S3')])
>>> grades_dtype = [('Name', (np.str_, 10)), ('Marks', np.float64),
...                 ('GradeLevel', np.int32)]
>>> grades_array = np.array([('Sam', 33.3, 3), ('Mike', 44.4, 5),
...                         ('Aadi', 66.6, 6)], dtype=grades_dtype)
>>> np.rec.fromstring(grades_array.tobytes(), dtype=grades_dtype)
rec.array([('Sam', 33.3, 3), ('Mike', 44.4, 5), ('Aadi', 66.6, 6)],
        dtype=[('Name', '
>>> s = '\x01\x02\x03abc'
>>> np.rec.fromstring(s, dtype='u1,u1,u1,S3')
Traceback (most recent call last):
   ...
TypeError: a bytes-like object is required, not 'str'