【发布时间】:2020-07-31 16:48:23
【问题描述】:
我在运行这段代码时遇到了一个无限循环:
intensity = 0.50
while intensity != 0.65:
print(intensity)
intensity = intensity + 0.05
强度值应该像 0.50 -> 0.55 -> 0.60 -> 0.65 然后它应该退出循环。 为什么程序会执行无限循环?
【问题讨论】:
-
一方面,你会得到浮点错误,所以在第二次迭代中
intensity是0.6000000000000001,并且循环永远不会关闭。四舍五入可以解决这个问题。但是,我不知道为什么它没有打印价值,所以我赞成你的问题。
标签: python loops while-loop floating-accuracy