我在两个不同的机器/操作系统上遇到了相同计算的差异。
在WIN7或更高版本的MS Server 2012上,我得到:0.004183203007551383
在MS Server 2008上,我得到了:0.004183203007551392
区别在于后两位数字:83
与92
。
我不是浮点精度专家,但是上面的数字有16位有效数字,应该在双精度范围内。
因此,我希望两个数字打印相同。
我错了并且两个数字相等吗?
在不同的OS中,浮点处理是否有区别?
我正在使用Python 2.7.13。数字是数值计算的结果,该结果由带有Python接口(.pyd)的已编译c ++库完成。