Python numpy.recarray.tobytes的倒数
与之相反的是什么Python numpy.recarray.tobytes的倒数,python,numpy,Python,Numpy,与之相反的是什么 >>将numpy作为np导入 >>>A=np.array([(2848327759)],dtype=[('x','我想您需要,它将bytestring(或者更一般地说,任何支持的Python对象)解释为数组。默认情况下,它假定dtype为np.float64,但您可以指定特定的dtype,包括结构化的dtype >>> import numpy as np >>> A = np.frombuffer(b"Cool", dtype=[('x',
>>将numpy作为np导入
>>>A=np.array([(2848327759)],dtype=[('x','我想您需要,它将bytestring(或者更一般地说,任何支持的Python对象)解释为数组。默认情况下,它假定dtype
为np.float64
,但您可以指定特定的dtype
,包括结构化的dtype
>>> import numpy as np
>>> A = np.frombuffer(b"Cool", dtype=[('x','<u2'),('y','<u2')])
>>> A
array([(28483, 27759)],
dtype=[('x', '<u2'), ('y', '<u2')])
如果您想要可写的内容,请使用而不是np.frombuffer
:
>>> A = np.fromstring(b"Cool", dtype=[('x','<u2'),('y','<u2')])
>>> A["x"] = 23
>>> A
array([(23, 27759)],
dtype=[('x', '<u2'), ('y', '<u2')])
记录数组与结构化数组非常相似,但有自己的ndarray
子类,允许通过属性访问检索字段:
>>> B = np.rec.array(A)
>>> B.x
array([28483], dtype=uint16)
哦。听起来像是答案……就是这样!我一直在从字节中查找,但什么也没找到。谢谢!
>>> A = np.fromstring(b"Cool", dtype=[('x','<u2'),('y','<u2')])
>>> A["x"] = 23
>>> A
array([(23, 27759)],
dtype=[('x', '<u2'), ('y', '<u2')])
>>> np.rec.array(A)
rec.array([(28483, 27759)],
dtype=[('x', '<u2'), ('y', '<u2')])
>>> B = np.rec.array(A)
>>> B.x
array([28483], dtype=uint16)