即使将数字四舍五入,小数点仍然不会 完全 符合您的期望。Python可能只显示最高有效位,但是潜在的十进制不准确度仍然存在。
python文档专门为它提供了一部分
由于显示值的方式,许多用户不了解近似值。Python仅将十进制近似值打印到机器存储的二进制近似值的真实十进制值。在大多数机器上,如果Python要打印存储为0.1的二进制近似值的真实十进制值,则必须显示
>>> 0.10.1000000000000000055511151231257827021181583404541015625这比大多数人认为有用的数字还要多,因此Python通过显示舍入的值来保持数字的可管理性。
>>> 1 / 100.1
对于大多数用例,可以安全地忽略不准确性。如果要处理的数字非常小或非常大,或者需要精确到许多小数位,则可以使用十进制 库
>>> Decimal('111.85') * Decimal('111.85') Decimal('12510.4225')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)