1.下面的 Python 代码输出结果是什么?
print(0.1 + 0.2 == 0.3)
1. Error
2. Machine dependent
3. False
4. True
答案:3. False
这里存在着精度问题,python默认的是17位小数的精度。而题目这种问题是由于底层 CPU 和IEEE 754 标准通过自己的浮点单位去执行算术时的特征。看似有穷的小数, 在计算机的二进制表示里却是无穷的。
1.下面的 Python 代码输出结果是什么?
print(0.1 + 0.2 == 0.3)
1. Error
2. Machine dependent
3. False
4. True
答案:3. False
这里存在着精度问题,python默认的是17位小数的精度。而题目这种问题是由于底层 CPU 和IEEE 754 标准通过自己的浮点单位去执行算术时的特征。看似有穷的小数, 在计算机的二进制表示里却是无穷的。