当前位置:  开发笔记 > 编程语言 > 正文

楼层功能错误

如何解决《楼层功能错误》经验,为你挑选了1个好方法。



1> Sarath Sadas..:

它不是地板上的错误.检查结果 %

In [61]: -1e-16 % 2
Out[61]: 2.0

In [62]: -1e-14 % 2
Out[62]: 1.99999999999999

您可以阅读每个计算机科学家应该知道的关于浮点算术的内容,以了解更多关于为什么%表现如此的知识.

该小数模块提供了十进制浮点运算的支持.它比foat数据类型具有几个优点.因此,对于浮点值的精确数学

sys.float_info

有关浮动类型的详细信息,可以使用sys.flaot_info.

sys.float_info.dig显示可以在浮点数中忠实表示的最大小数位数; 对于包含具有更多数字的值的计算,您可能无法获得具有给定精度的精确结果

这就是我所拥有的

In [217]: import sys

In [218]: sys.float_info.dig
Out[218]: 15


@Tagc尝试在提示符下输入"1.99999999999999999999".`floor`实际上是以`2.0`为参数,因为`1.99999999999999999999`无法准确表示为浮点值.
推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有