Python
Python2 中除法的问题
>>> 3 / 6
0
>>> 3.0 / 6
0.5
>>> 3.0 / 6.0
0.5
>>> 5 / 2
2
>>> 6.0 / 3
2.0
>>> 10.0 / 3
3.3333333333333335
>>> 0.2 +0.9
1.1
>>> 0.2 +0.1
0.30000000000000004
因为计算机要将我们输入得十进制转换为二进制,浮点数转换二进制的时候,就会有问题 0.1 转为二进制位0.000110011 转换后不会再精确的等于十进制的0.1了,一般我们将结果进行四舍五入保留两位,进行计算。
Python2 中是除法 取整数部分 ,因而得到3/6 =0,5/2=2
可引用 from __future__ import division 模块解决
>>> from __future__ import division
>>> 3 / 6
0.5
>>>
Python 中 余数
余数的两种方式
1、 %
2、divmod() ,得到商和余数
>>> 6 % 5
1
>>> 6 % 4
2
>>> divmod(6,4)
(1, 2) 商和余数
>>> divmod(6,5)
(1, 1)