向上取整:math.ceil()
1 2 3 4 5 6 7 |
|
如code所见,math.ceil()严格遵循向上取整,所有小数都是向着数值更大的方向取整,不论正负数都如此
四舍五入:round()
1 2 3 4 5 6 7 8 9 10 11 12 |
|
如code所示,round()当不传入第二个参数时默认取整,具体就是按照四舍五入来。但值得一提的是这里对小数末尾为5的处理方法:当末尾的5的前一位为奇数:向绝对值更大的方向取整(比如-1.5、1.5处理结果);当末尾的5的前一位为偶数:去尾取整(比如-2.5,-0.5,0.5和2.5的处理结果)。
向下取整:math.floor()
1 2 3 4 5 |
|
简单且忠实地向下取整,不再讨论
两个有趣且特殊的Python取整:int()、整除"//"
int()
1 2 3 4 5 6 7 8 |
|
一句话总结:int()函数是“向0取整”,取整方向总是让结果比小数的绝对值更小
"//"
1 2 3 4 5 6 7 8 |
|
一句话总结:“整除”符号运算将结果忠实地向下取整,与math.floor()处理结果一样
总结一下:
向上取整:math.ceil()
向下取整:math.floor()、整除"//"
四舍五入:round()——奇数向远离0取整,偶数去尾取整;或言之:奇数进位,偶数去尾
向0取整:int()