core.records.
fromstring
从二进制数据创建记录数组
请注意,尽管有此函数的名称,但它不接受 str 实例。
二进制数据缓冲区
所有数组的有效数据类型
每个阵列的形状。
在缓冲区中开始读取的位置。
如果 dtype 是 None ,这些参数将传递给 numpy.format_parser 构造数据类型。有关详细文档,请参见该函数。
None
numpy.format_parser
将数组视图记录到datastring中的数据中。这将是只读的,如果 datastring 是只读的。
参见
numpy.frombuffer
实例
>>> 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'