一尘不染

为np.array(1。)指定默认dtype

python

有没有一种方法可以指定与struct一起使用的默认dtype np.array(1.)

我特别想np.array(1.)成为np.float32np.array(1)成为np.int32。相反,我得到np.float64np.int64


阅读 206

收藏
2021-01-20

共1个答案

一尘不染

默认值取决于您的系统。在64位系统上,默认类型为64位。在32位系统上,默认类型为32位。无法使用其他系统C标头更改默认值,即重新编译numpy。

您当然可以明确指定dtype,例如

>>> x = np.array(1, dtype='int32')

编辑:正如kazemakase在下面提到的,以上内容仅适用于int32 /
int64。在最新的numpy版本中,无论系统如何,浮点的默认值为float64。

2021-01-20