2015-06-24 62 views
15

在Python 2中,floor()返回一个浮点值。虽然没有明显的对我来说,我发现了一些解释澄清为什么它可能是有floor()回报浮动(病例像float('inf')float('nan'))是有用的。Python 3中int()和floor()之间的区别是什么?

然而,在Python 3,floor()返回整数(并返回溢出错误为前面提到的特殊情况下)。

那么有什么区别,如果有的话,int()floor()现在之间?

回答

40

floor()回合下来int()截断。所不同的是明确的,当你使用负数:

>>> import math 
>>> math.floor(-3.5) 
-4 
>>> int(-3.5) 
-3 

在负数向下取整意味着他们从0搬走,截断移动他们更接近0

把不同的看法,在floor()总是会要低于或等于原来的。 int()将接近零或相等。

+1

谢谢!我从来没有想过负整数。 – datah4ck3r

相关问题