地板功能对于正数和负数不对称

时间:2015-05-26 11:26:00

标签: python math floor

我正在使用Python 3.4.3。 import petl as etl table1 = etl.fromcsv(source='Books.csv',encoding='utf-8') table2 = etl.sort(table1, 'ACCOUNT_ID') etl.tocsv(table2, source='NewBooks.csv',encoding='utf-8') 函数给出了正数和负数的不同答案。例如:

math.floor

为什么我在答案中得到了这个差异?

3 个答案:

答案 0 :(得分:11)

根据documentation

  

将x的底限作为float返回,最大整数值小于   或等于x。

math.floor()始终返回最接近的较低整数值。记住这一点,-20<-19.8<-19所以-20按预期返回。

另一方面,对于正整数,例如5.5,5<5.5<6,所以math.floor()将在此返回5.

答案 1 :(得分:0)

原因是地板功能向下舍入。所以19.8轮下降到19和-19.8轮到-20,因为-20小于-19.8。

答案 2 :(得分:-3)

floorgreatest integer函数,意味着小于给定值的最大整数。

-20 < -19.5 < -19   --> -20 is the greatest integer less than -19.5
 19 <  19.5 <  20   -->  19 is the greatest integer less than  19.5