Verison 2.6.5如果有帮助。 因此,我在django中做了一些东西,并从Floatfield获取了一个值。并将它与另一个floatfield进行比较。我们称之为2 X和Y. 当我运行它时,X最终会变成35.0。当我运行它时,Y最终以35.0结束。Python的浮点问题?
35.0 > 35.0 # False, ok no worries
X > Y # True, why?
round(X) > round(Y) # False, ok looks like i have to round it
我知道浮动计算过程,但在这种情况下有问题,为35.0,所以我认为他们实际上是被35.0显示我的两个变量的值。这是否意味着python可能不会在float对象后面显示一些信息?我知道这是一个常见的问题,但如果它实际上是35.000000001什么的,python是不是显示整个值?
编辑:好的,最后通读这一点。浮点生活问题现在解决了我大声笑。 http://docs.python.org/2/tutorial/floatingpoint.html
http://stackoverflow.com/questions/16551128/python-float-rounding-errors/16551150 –
所以实际上,我还有一个问题。我知道会发生,但python不显示它? 35.0实际上意味着像35.000000000001? – dtc
基本上......浮点不精确 –