首先来看一个浮点数运算:下面,当2个float类型数据,进行运算,就不能保证精度
a = 0.1b = 0.3print(a)print(b)print(b-a)
那么,怎么让上面的减法值,得到我们想要的 0.2 呢?导入 decimal模块,如果要不丢失精度Decimal类中必须要接收的是 str类型,如果还是传入 float类型,那么精度还是会丢失
import decimala = 0.1b = 0.3print(decimal.Decimal(str(b)) - decimal.Decimal(str(a)))print(decimal.Decimal(b) - decimal.Decimal(a))
原文地址:https://www.cnblogs.com/xiaofeng91/p/12051898.html
时间: 2024-11-09 05:14:09