知行编程网知行编程网  2022-08-14 15:30 知行编程网 隐藏边栏  17 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python中如何取整数的相关知识,包括python中if语句用法,以及Python随机生成一个数这些编程知识,希望对大家有参考作用。

首先要提醒大家一个容易被忽视或混淆的问题——一般来说0.5是小数,结尾是5,四舍五入应该四舍五入。这个进位意味着:-0.5 → -1; 0.5→1。即正负条件不同,都从0带走,使绝对值变大。

如何在python中获取整数


向上取整:math.ceil()

import math
math.ceil(-0.5)
>>> 0
math.ceil(-0.9)
>>> 0
math.ceil(0.3)
>>> 1

正如你在代码中看到的,math.ceil() 严格遵循四舍五入,并且所有小数都沿较大值的方向四舍五入,无论是正数还是负数。


四舍五入:round()

round(-2.5)
>>> -2
round(-1.5)
>>> -2
round(-0.5)
>>> 0
round(0.5)
>>> 1
round(1.5)
>>> 2
round(2.5)
>>> 2

如代码所示,round()在不传入第二个参数时默认取整,具体根据取整。但这里值得一提的是如何处理小数末尾的5:当末尾的5的第一位是奇数时:向绝对值较大的方向取整(如-1.5、1.5处理结果);当末尾的 5 为奇数时: 第一位为偶数:四舍五入到末尾(如-2.5、-0.5、0.5 和2.5 的处理结果)。


向下取整:math.floor()

math.floor(-0.3)
>>> -1
 
math.floor(0.9)
>>> 0

简单且忠实地向下取整,不再讨论

两个有趣且特殊的Python取整:int()、整除"//"


int()

int(-0.5)
>>> 0 
int(-0.9)
>>> 0
int(0.5)
>>> 0
int(0.9)
>>> 0

一句话总结:int()函数是“四舍五入到0”,四舍五入的方向总是让结果小于小数的绝对值


"//"

(-1) // 2  # -0.5
>>> -1
(-3) // 2  # -1.5
>>> -2
1 // 2    # 0.5 
>>> 0
3 // 2    # 1.5
>>> 1

一句话总结:“除”符号运算忠实地向下取整结果,就像 math.floor() 处理结果一样


总结一下:

向上取整:math.ceil()

向下取整:math.floor()、整除"//"

四舍五入:round()——奇数从0开始四舍五入,偶数从尾四舍五入;或者换句话说:奇数四舍五入,偶数四舍五入。

向0取整:int()

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享