python中的除法

2021-08-20 03:24:03 字數 802 閱讀 7724

「/」和「//」

「/」 在python2中為傳統除法,即當除數被除數都為整數時結果為捨去小數部分的整數,除數和被除數有乙個為浮點數,結果為精確的浮點數。在python3中為真除法,無論除數和被除數為什麼,結果都為精確的浮點數。

「//」 在python2和python3中為地板除。從python2.2開始到最新的python3,增加了乙個操作符 // ,以執行地板除://除法不管運算元為何種數值型別,總是會捨去小數部分,返回數字序列中比真正的商小的最接近的數字

舉個栗子:

#python2 

>>> 5/2

2>>>5.0/2

2.5>>>5.0/2.0

2.5>>>5//2

2>>>5.0//2

2.0>>>5.0

2.0#python3

>>> 5/2

2.5>>> 5.0/2

2.5>>> 5.0/2.0

2.5

總的來說:

「/」從傳統除法變為了真除法(也叫精確除法),「//」從python2.2到現在都沒變過

傳統除法的原則:除數和被除數為整數用地板除,有乙個為浮點數用真除法

真除法的原則:忽略除數和被除數的數值型別,結果都為精確的浮點數

地板除的原則:始終對小數部分向下取整,除數和被除數為整數,結果為整數,有乙個為浮點數,結果為浮點數,格式基本已確定為整數部分.0

python中的除法

在未來的 python 3.0中,x y將只執行true除法,而與運算元無關 x y則執行floor除法。如果需要在2.5版本的 python中進行這樣的用法,則需要在 前加入from future import division的宣告。如 python from future import div...

Python中的除法

python中分為3種除法 傳統除法 精確除法 地板除。傳統除法 print 10 3 輸入結果 3.3333333333333335 精確除法 即使是兩個整數恰好整除,結果也是浮點數 print 9 3 輸入結果 3.0 地板除兩個整數的除法仍然是整數 print 9 3 輸入結果 3 你沒有看錯...

python中的除法

首先要說的是 python中的除法運算,在 python 2.5版本中存在兩種除法運算,即所謂的true除法和floor除法。當使用x y形式進行除法運算時,如果x和y都是整形,那麼運算的會對結果進行擷取,取運算的整數部分,比如2 3的運算結果是0 如果x和y中有乙個是浮點數,那麼會進行所謂的tru...