为什么在Python中两个浮点数的运算结果会不精确?
问题描述:
在python中定义两个浮点型变量,值分别为1.1和2.2,两者相加并输出结果,结果并非为我们直观得到的3.3,而是趋近于3.3的一个小数值。
代码如下:
n1 = 1.1
n2 = 2.2
print(n1+n2)
输出结果:
3.3000000000000003
为什么会出现这种情况呢?
分析:
计算机中只有0和1,所有数据在计算机中都是以0和1的形式存储的,在机器字长有限的情况下,浮点数(小数)的精度也是有限的。
举个例子:
假如用一个8位的变量表示-1—1之间的小数,8位的变量共有
原创
2020-10-20 16:26:50 ·
2871 阅读 ·
0 评论