为什么math.ceil返回1.0而不是6.0?如果我删除math.ceil,则返回值为5.54815801154e-07
num = math.ceil(float(.25) / (float(100) * 4506))
print num
returns 1.0
答案 0 :(得分:3)
你对科学记谱法感到困惑。
ciel(.00000055) = 1
你看,eN
是计算机说*10^N
的方式,就像你在学校看到的那样。
因此,5.5e-7
= 5.5*10^-7
。
答案 1 :(得分:1)
>>> float(.25) / (float(100) * 4506)
5.5481580115401685e-07
ceil()
返回下一个大于该值的1的整数。
答案 2 :(得分:0)
math.ceil返回大于或等于x的最小的最小整数值。 5.54815801154e-07实际上并不是5,但实际上是一个非常小的数字。所以最接近的整数值是1.