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 только для чтения.
Смотрите также
Примеры
>>> 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'