复制numpy数组内容而不更改具有不同dtype的数组中的值

时间:2019-05-17 16:19:04

标签: python arrays numpy

更改dtype时,使用numpy数组得到以下结果。

使用np.float32:

>>> np.sin(np.array([0.0, np.pi / 4.0, np.pi / 2.0], dtype=np.float32))
array([ 0.        ,  0.70710683,  1.        ], dtype=float32)

使用np.float64:

>>> np.sin(np.array([0.0, np.pi / 4.0, np.pi / 2.0], dtype=np.float64))
array([ 0.        ,  0.70710678,  1.        ])

我希望将在dtype float64的numpy数组中获得的结果原样复制到dtype float32的numpy数组中,而不会强制转换/舍入float值。

我需要类似的东西:

>>> np.sin(np.array([0.0, np.pi / 4.0, np.pi / 2.0], dtype=np.float32))
array([ 0.        ,  0.70710678,  1.        ])

在某些情况下,数组也可以是多维的。有什么办法可以做到这一点?

0 个答案:

没有答案