【发布时间】:2021-01-03 15:22:03
【问题描述】:
对于我编写的涉及有限代数域的程序计算,我需要检查(2**58-1)/61 是否为整数。然而python似乎表明它是,虽然它是not。
例如-
>>> (2**58-1)/61
4725088133634619.0
即使在使用 numpy 函数时也会出现此问题 -
>>> np.divide(np.float64(2**58)-1,np.float64(61))
4725088133634619.0
虽然 python 确实正确计算了 2**58,但还是会发生这种情况(我认为这个问题很普遍,但我使用这些数字遇到了它)。
【问题讨论】:
标签: python numbers rounding number-formatting calculation