python怎么向上取整数,python 向下取整数
我觉得是python对浮点数的精度限制造成的(浮点数的个数是有限的)。3.999999999999实际上在计算机表示上和浮点数4.0是同一个数。
实际上:
float( 3.999999999999999995 )=3.99999999995
float( 3.999999999999999996 )=3.999999999995
float( 3.999999999999999997 )=3.999999999995
float( 3.99999999999999998 )=4.0
float( 3.9999999999999999 )=4.0
至于int()的整数截断的具体原理,我不太清楚。
请参见以下代码:
对于范围内的I(20):
numstr=3 9 * i
print(f float( { numstr } )={ float(numstr)} )
如果float(numstr)==4.0:
破裂
运行结果:
浮动( 3。)=3.0
float(3.9)=3.9
float(3.99)=3.99
float(3.999)=3.999
float(3.9999)=3.9999
float(3.99999)=3.99999
float(3.999999)=3.999999
float(3.9999999)=3.9999999
float(3.99999999)=3.99999999
float( 3.999999999 )=3.999999999
float( 3.9999999999 )=3.9999999999
float( 3.99999999999 )=3.9999999999
float( 3.99999999999 )=3.99999999999
float( 3.999999999999 )=3.99999999999
float( 3.9999999999999 )=3.9999999999
float( 3.99999999999999 )=3.999999999
float( 3.9999999999999999 )=4.0
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。