非奇数的Python中的舍入错误?

非奇数的Python中的舍入错误?,第1张

奇数的Python中的舍入错误?

Python 3.x都有,相比之下到Python
2.x中,使用银行家舍入的

round()
功能。

这是记录的行为:

如果两个倍数相等接近,则四舍五入取整为偶数选择(例如,round(0.5)和round(-0.5)均为0,而round(1.5)为2)。

由于浮点数本质上仅是近似值,因此如何对待“精确的”半整数无关紧要-前面的计算中总会有舍入误差。

编辑 :要获取旧的舍入行为,可以使用

def my_round(x):    return int(x + math.copysign(0.5, x))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5645442.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存