python 取整函式

2022-03-01 13:08:40 字數 1797 閱讀 4621

向下取整的運算稱為floor,用數學符號⌊⌋表示;向上取整的運算稱為ceiling,用數學符號⌈⌉表示。例如:

⌊59/60⌋=0

⌈59/60⌉=1

⌊-59/60⌋=-1

⌈-59/60⌉=0

向上向下 取整函式數隻會對小數點後面的 數字不為零 的數進行操作,

要是給它乙個整數 它就返回整數本身

對小數不為零的數操作:

給定 4.9

呼叫用向下取整函式 得到的是 4

呼叫用向上取整函式 得到的是 5

廢話少敘,直接上code:

首先,不得不提醒大家乙個容易被忽視或者搞混的問題——一般的,0.5這種末尾是5的小數,四捨五入取整應進製。這個進製的意思是:-0.5 → -1;0.5 → 1.即正負情況不同,都向著遠離0,使得絕對值更大的方向進製

向上取整:math.ceil()

import math

math.ceil(-0.5)

>>> 0

math.ceil(-0.9)

>>> 0

math.ceil(0.3)

>>> 1

如code所見,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

如code所示,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()

由於最近在做演算法題,許多演算法題都要涉及(0-1)/2這類的邊界計算,這時候我們想讓這個-0.5取整至0,而且想讓(4-1)/2的結果1.5取整至1,即正數時向下取整,負數時向上取整,總而言之就是向0取整,這時候我們可以用int()

python取整函式

1.int 向下取整 內建函式 1 n 3.75 2 print int n 3 3 n 3.25 4 print int n 3 2.round 四捨五入 內建函式 1 n 3.75 2 print round n 4 3 n 3.25 4 print round n floor 向下取整 mat...

下取整函式的含義 取整函式解讀

關於 x 以及 的性質與應用摘要 x和x是非常重要的數論函式 其他許多數學分支都要涉及到,在國 內外的數學競賽中也經常出現含有x和 x的問題 這類問題新穎獨特 頗具啟發性。本文主要討論x以及 x的性質,和x以及 x在數學中的應用,以及x 以及x在數學競賽中的應用。取整函式 小數函式 性質 應用 例題...

MS SQL取整函式

兩個整數相除將截斷小數部分 select 3 4,4 3,5 3 結果 0,1,1 返回大於或等於所給數字表示式的最小整數 select ceiling 123.55 ceiling 123.45 ceiling 123.45 ceiling 0.0 結果 124,124,123,0 四捨五入 ro...