初学Python,尝试计算功能,输入73.2+1,计算结果竟然是23.4000000002;尝试其他的数据计算,发现63.2+1也是错误结果;其他尝试结果均正确。求各位帮忙解惑
https://xufive.blog.csdn.net/article/details/103816159
希望对你有帮助。
这是由于计算机是以二进制存储数据的,而我们人看的都是十进制数。在小数部分,也就是0到1之间的数,有些小数在十进制是有理数而在二进制里面是无理数,类似于π那种无线不循环的。计算机就只有截取前面n位数进行存储。反正就一句话,这是由于进制转换导致的
【有帮助请采纳】
这不是乱码哦!
在Python中的小数不是以精确值进行存储的!而是一个浮点数!
比如说1.1,它表面是1.1,但是它在Python中实际的结果是1.1000000000000001!
如果你想得到高精度的运算结果,请用decimal高精度运算模块
如果是平时简单的运算,这样高的精度足够了!
【有帮助请采纳】