通过重新解释原始字节从一种类型的numpy数组转换为另一种类型

时间:2014-03-25 00:14:54

标签: python arrays python-2.7 numpy

有没有办法做" reinterpret_cast"有numpy数组?这是一个例子:

>>> import numpy as np
>>> x=np.array([105,79,196,53,151,176,59,202,249,0,207,6], dtype=np.uint8)
>>> np.fromstring(x.tostring(),'<h')
array([ 20329,  13764, -20329, -13765,    249,   1743], dtype=int16)

我可以调用tostring()然后调用fromstring()从数组转换为原始字节,然后再调用另一个数组。我只是想知道是否有办法让我跳过中间步骤。 (并不是说这很重要,我只想理解。)

1 个答案:

答案 0 :(得分:4)

是。当您view具有不同dtype的数组时,您将根据不同的dtype重新解释基础数据(零和1)。

In [85]: x.view('<i2')
Out[85]: array([ 20329,  13764, -20329, -13765,    249,   1743], dtype=int16)