Python中分为3种除法:传统除法、精确除法、地板除。
>>>1/2
0
>>>1.0/2.0
0.5
精确除法
除法总是会返回真实的商,不管操作数是整形还是浮点型。执行from __future__ import division 指令就可以做到这一点。
>>>from __future__ import division
>>>1/2
0.5
>>>1.0/2.0
0.5
地板除
从Python2.2开始,增加了一个操作符 // ,以执行地板除://除法不管操作数为何种数值类型,总是会舍去小数部分,返回数字序列中比真正的商小的最接近的数字,我的理解就是取下整,学过数学都知道取整哈。
>>>3//2
1
>>>3//4
0
>>>-1//2
-1
内建函数divmod()divmod (a,b),返回(a//b,a%b)
>>>divmod(1,2)
(0,1)