python的round出现问题,什么鬼???
如果用a=2.5
print(round(a))
那么显示的结果是2
如果用
a=2.51
print(round(a))
显示的结果却是3
但是吧后面的数值换成除了小数点前面是2以外的所有数值,都是可以四舍五入的。
只要小数点前面是2的,那么小数点后面必须是大于0.5才可以入
这是什么情况
计算机的浮点型都是有误差的
所以在 .5 这个边界若恰好位于 .5
那么认为还是 四舍 部分,而只要大于 .5 部分就为 五入
1.5
3.5
4.5
5.5
6.5
7.5
8.5
9.5
都是可以入
只有2.5是不可以入
很奇怪。 xphgz 发表于 2021-5-25 17:22
1.5
3.5
4.5
{:10_328:} 试了下还真是...
实际上没必要纠结啦,本质就是 浮点数不精确导致的
页:
[1]