[轉錄] Python 各種除法

來源:http://www.gonglin91.com/python-%E5%90%84%E7%A7%8D%E9%99%A4%E6%B3%95-%E5%9B%9B%E8%88%8D%E4%BA%94%E5%85%A5-%E5%90%91%E4%B8%8B%E5%8F%96%E6%95%B4-%E5%90%91%E4%B8%8A%E5%8F%96%E6%95%B4/

1.普通除法 /
根據運算元不同結果不同

a = 1
b = 2
a/b = 0
兩者都是整數,那麼結果就是除法的整數部分,和c語言裡面的/是一樣的

a = 1.0
b = 2.0
a/b = 0.5
兩者中只要有1一個是浮點數,那麼結果就是精確的除法,這點和c語言還是一樣的

2.取整除法 //
a = 1.0
b = 2.0
a//b = 0
與運算元的類型無關,返回的一定是結果的整數部分
如果兩個數都是整數,a//b 等同於 a/b
如果有一個為浮點數,a//b = x.0 x就是結果的整數部分,如果要得到整數,可以 int(a//b)

3.如果希望兩個整數相除,得到精確值,可以
from __future__ import division

a = 1
b = 2
a/b = 0.5

4.內置函數 divmod() divmod(a,b) = (a//b,a%b)
a = 13
b = 2
divmod(a,b) = (6,1)

5.四捨五入,內置函數 round
a = 2.3
round(a) = 2.0

6.向下取整,向上取整,都是在math模組中,和c語言一樣,floorceil
a = 2.4
math.floor(a) = 2.0
math.ceil(a) = 3.0

 

 

本篇發表於 程式設計。將永久鏈結加入書籤。