numpy.core.records.fromstring
-
core.records.fromstring(datastring, dtype=None, shape=None, offset=0, formats=None, names=None, titles=None, aligned=False, byteorder=None)[source] -
Создать массив записей из двоичных данных
Обратите внимание, что, несмотря на название этой функции, она не принимает
strэкземпляры.- Параметры
-
-
datastringbytes-like -
Буфер двоичных данных
-
dtypedata-type, optional -
Допустимый тип данных для всех массивов
-
shapeint or tuple of ints, optional -
Форма каждого массива.
-
offsetint, optional -
Позиция в буфере для начала чтения.
- formats, names, titles, aligned, byteorder :
-
Если
dtypeявляетсяNone, эти аргументы передаются вnumpy.format_parserдля построения типа данных. См. эту функцию для подробной документации.
-
- Возвращает
-
- np.recarray
-
Вид массива записей в данные в datastring. Он будет только для чтения, если
datastringявляется только для чтения.
См. также
Примеры
>>> a = b'\x01\x02\x03abc' >>> np.core.records.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.core.records.fromstring(grades_array.tobytes(), dtype=grades_dtype) rec.array([('Sam', 33.3, 3), ('Mike', 44.4, 5), ('Aadi', 66.6, 6)], dtype=[('Name', '<U10'), ('Marks', '<f8'), ('GradeLevel', '<i4')])>>> s = '\x01\x02\x03abc' >>> np.core.records.fromstring(s, dtype='u1,u1,u1,S3') Traceback (most recent call last) ... TypeError: a bytes-like object is required, not 'str'
© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.core.records.fromstring.html