为什么
np.multiply( np.array(100000) , np.array(100000) )
给出1410065408这是不正确的,但
100000*100000
给出10000000000
正确吗?
我知道使用非整数100000可以正常工作,但是为什么对整数乘以错误的结果呢?
感谢您的帮助。
答案 0 :(得分:0)
不是np.multiply
而是np.array
会给您带来错误的结果:您有32位整数系统,这是一个溢出。试试:
np.multiply( np.array(100000, dtype=np.int64) , np.array(100000, dtype=np.int64) )