请问为什么10.1-10=0.09999999999999964
In : 10.1 - 10Out: 0.09999999999999964
In : 10.2-10
Out: 0.1999999999999993
In : 2.1-1
Out: 1.1
In : 6.1-6
Out: 0.09999999999999964
为什么会出现这种情况?有些没问题,有些有问题
10.1-10 不是应该等于0.1吗? 浮点数都是有误差的,误差在一定范围内是可以忽略的 这跟浮点数在计算机的存储方式有关,浮点数运算有可能会出现精度丢失,
你可以用 decimal 尽可能的避免精度丢失:
In : from decimal import Decimal
In : Decimal('10.1') - Decimal('10')
Out: Decimal('0.1')
In :
页:
[1]