Python 的 Numpy 点函数返回不正确的值,为什么?
Python's Numpy dot function returning incorrect value, why?
真的很简单,我的代码是:
import numpy as np
a = np.array([0.4, 0.3])
b = np.array([-0.15, 0.2])
print(np.dot(a,b))
这个的点积应该是 0,而我得到:
3.3306690738754695e-18
Floating-point!
Floating-point(即 non-integer)算术往往不是 100% 准确。
有关详细信息,请参阅 here。
另外请注意,您的结果非常接近于零。
真的很简单,我的代码是:
import numpy as np
a = np.array([0.4, 0.3])
b = np.array([-0.15, 0.2])
print(np.dot(a,b))
这个的点积应该是 0,而我得到:
3.3306690738754695e-18
Floating-point!
Floating-point(即 non-integer)算术往往不是 100% 准确。
有关详细信息,请参阅 here。
另外请注意,您的结果非常接近于零。