非奇数的Python中的舍入错误?
我是Python的初学者,我有一个问题。
为什么用奇数整数部分round(num)
四舍五入像5.5、7.5((任何).5)这样的数字正确工作(规则5/4),但是用同一个函数将非奇数整数部分像(任何).5进行四舍五入只返回整数部分?(但是,如果我们在该十进制数上加上一个像0.000000001这样的小数字,它将正常工作)
我的意思是下一个:
round(9.5)
返回10,这是正确的。但
round(8.5)
返回8,这是不正确的。和
round(8.5 + 0.0000000000001)
返回9。
为什么工作不正确? 我在Windows上使用Python 3.2.2。