在Python 2中,floor()
返回一个浮点值.虽然对我来说并不明显,但我发现了一些解释,解释了为什么floor()
返回浮动可能有用(对于float('inf')
和float('nan')
这样的情况).
然而,在Python3中,floor()
返回整数(对于前面提到的特殊情况,floor()
返回溢出错误).
那么现在int()
和floor()
之间有什么区别呢?
在Python 2中,floor()
返回一个浮点值.虽然对我来说并不明显,但我发现了一些解释,解释了为什么floor()
返回浮动可能有用(对于float('inf')
和float('nan')
这样的情况).
然而,在Python3中,floor()
返回整数(对于前面提到的特殊情况,floor()
返回溢出错误).
那么现在int()
和floor()
之间有什么区别呢?
floor()
发down发.int()
truncates. 当你使用负数时,差别是显而易见的:
>>> import math
>>> math.floor(-3.5)
-4
>>> int(-3.5)
-3
在负数上向下舍入意味着它们远离0,而截断意味着它们更接近0.
换言之,floor()
总是比原来的低或相等.int()
将更接近于零或相等.