【发布时间】:2020-06-18 19:08:32
【问题描述】:
为什么
np.multiply( np.array(100000) , np.array(100000) )
给出不正确的 1410065408 但是
100000*100000 给出10000000000 哪个是正确的?
我知道使用非整数 100000 可以,但为什么整数的乘法结果错误?
感谢您的帮助。
【问题讨论】:
为什么
np.multiply( np.array(100000) , np.array(100000) )
给出不正确的 1410065408 但是
100000*100000 给出10000000000 哪个是正确的?
我知道使用非整数 100000 可以,但为什么整数的乘法结果错误?
感谢您的帮助。
【问题讨论】:
不是np.multiply 而是np.array 给你错误的结果:你有32 位整数系统,这是一个溢出。试试:
np.multiply( np.array(100000, dtype=np.int64) , np.array(100000, dtype=np.int64) )
【讨论】: