所以我创建了一个while x <= 10相加0.01,但它将数字输出到4dp,依此类推,也降低了结尾。
x = 0
c = 0 #count of numbers
while x <= 10:
x += 0.01
c += 1
print (x)
print(c)
预期结果为0.01,0.02,0.03结果似乎在0.06处更改
0.010.02 0.03 0.04 0.05 0.060000000000000005 0.07 0.08 0.09 0.09999999999999999中间材料9.959999999999832 9.969999999999832 9.979999999999832 9.989999999999831 9.999999999999831 10.009999999999831
发布于 2019-06-11 03:28:56
我猜这是因为浮点舍入行为。有趣的是,您可以在for循环中通过十进制值进行迭代,但浮点加法的不可靠行为(据我所知)使这变得不太可取。
https://stackoverflow.com/questions/56532422
复制相似问题