以下代码产生运行时警告,因为1.0超出了arctanh函数的范围,但代码继续运行并打印inf
以获得计算结果,然后Not dead yet!
import numpy
from numpy import arctanh
print(arctanh(1.0))
print("Not dead yet!")
numpy的arctanh函数的这种行为似乎与python通常处理算术异常的方式不一致。例如,如果我将arctanh更改为1.0/0.0
,我会得到ZeroDivisionError,这会导致程序立即终止。
有没有办法改变numpy的行为,以便这种类型的警告成为错误,或者警告导致程序终止,因为错误会发生?