Python教程:ceil、floor、round、int取整

小小程序员ol發表於2024-07-16

1.向上取整 math.ceil

math.ceil() 嚴格遵循向上取整,所有小數都向著數值更大的方向取整。

import math
math.ceil(-1.5) # -1
math.ceil(1.5) # 2
math.ceil(-0.9) # 0

2.向下取整 math.floor

同 math.ceil 類似,方向相反,向下取整。

import math
math.floor(-0.5) # -1
math.floor(1.6) # 1

3.四捨五入 round

round() 方法返回浮點數的四捨五入值。

使用語法:

round(x, [, n])
x -- 浮點數
n -- 小數點位數

實操:

round(1.5) # 2
round(-1.5) # -2
round(-0.5) # 0
round(0.5) # 0
round(2.5) # 2
round(100.5132, 2) # 100.51

不傳第二個引數時,預設取整,四捨五入
小數末尾為5的處理方法:

  • 末尾為5的前一位為奇數:向絕對值更大的方向取整
  • 末尾為5的前一位為偶數:去尾取整

round只是針對小數點後.5的情況會按照規律計算,因為儲存時不同,例如:4.5儲存時為4.4999999...

4.取整 int

int() 向0取整,取整方向總是讓結果比小數的絕對值更小。

#Python學習交流群:725638078
int(-0.5) # 0
int(-0.9) # 0
int(0.5) # 0
int(1.9) # 1

5.整除 //

”整除取整“符號運算實現向下取整,與 math.floor() 方法效果一樣。

-1 // 2 # -1
-3 // 2 # -2
101 // 2 # 50
3 // 2 # 1

相關文章