【发布时间】:2013-09-05 21:45:04
【问题描述】:
有谁知道为什么下面不等于0?
import numpy as np
np.sin(np.radians(180))
或:
np.sin(np.pi)
当我将它输入 python 时,它给了我 1.22e-16。
【问题讨论】:
-
浮点舍入误差。
-
Pi 不能完全表示为浮点数,因此
sin(pi)不会完全为零。 -
有修复方法还是需要将其转换为 int?
-
你应该用
np.allclose检查值:np.allclose(np.sin(np.pi), 0) -
@ViktorKerkez:您应该将其发布为答案。我会写一个以防您不了解它,如果您稍后再回来,请删除它。
标签: python numpy trigonometry