【发布时间】:2016-01-07 21:05:12
【问题描述】:
这段代码给出了一个可怕的结果(这是在 Python 3.5,NumPy 1.10 中。):
import numpy as np
a = np.array([0,0,1])
a[1] = 2.5
print(a) -----> [0 2 1]
(当您尝试将浮点数放入整数 numpy 数组中时,它会被舍入而不会发出警告!)
我的问题是:是否有任何 numpy 设置和/或编程技术可以可靠地避免这个问题?当然,我知道每次声明数组时我都可以使用a = np.array(..., dtype=float) 或a = np.array([0., 0., 1.]) 或其他任何东西,但我正在寻找比这更可靠的东西——毕竟我可能会健忘。例如,numpy 中是否有一个开关可以普遍打开粗略类型强制的警告?或者类似的东西?
【问题讨论】:
标签: python numpy type-conversion