关于Python中浮点数精度处理的技巧总结

转载  更新时间:2017年08月10日 09:14:39   作者:杰瑞26   我要评论

双精度浮点数(double)是计算机使用的一种数据类型,使用 64 位(8字节) 来存储一个浮点数。下面这篇文章主要给大家总结介绍了关于Python中浮点数精度处理的技巧,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

最近在使用Python的时候遇到浮点数运算,发现经常会碰到如下情况:

出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些数不精确。

比如说: 0.1是十进制,转化为二进制后它是个无限循环的数:

0.00011001100110011001100110011001100110011001100110011001100

而python是以双精度(64)位来保存浮点数,多余的位会被截掉,所以看到的是0.1,但在电脑上实际保存的已不是精确的0.1,参与运算后,也就有可能点误差,特别是金融邻域里面,对精度更是要求更高,如何在Python中获取特定位数精度值?

【方法一】利用round方法:


【方法二】利用decimal模块:


更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • python爬虫爬取网页表格数据

    python爬虫爬取网页表格数据

    这篇文章主要为大家详细介绍了python爬虫爬取网页表格数据,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • Python KNN分类算法学习

    Python KNN分类算法学习

    这篇文章主要为大家详细介绍了Python KNN分类算法的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • python 多维切片之冒号和三个点的用法介绍

    python 多维切片之冒号和三个点的用法介绍

    下面小编就为大家分享一篇python 多维切片之冒号和三个点的用法介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 在Python程序中操作文件之isatty()方法的使用教程

    在Python程序中操作文件之isatty()方法的使用教程

    这篇文章主要介绍了在Python程序中操作文件之isatty()方法的使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下
    2015-05-05
  • Python socket C/S结构的聊天室应用实现

    Python socket C/S结构的聊天室应用实现

    这篇文章主要介绍了Python socket C/S结构的聊天室应用实现,需要的朋友可以参考下
    2014-11-11
  • Python彩色化Linux的命令行终端界面的代码实例分享

    Python彩色化Linux的命令行终端界面的代码实例分享

    美化Linux的terminal终端显示的方法多种多样,这里我们给出一个利用Python彩色化Linux的命令行终端界面的代码实例分享,包括一个Linux下简便执行Python程序的方法,需要的朋友可以参考下
    2016-07-07
  • python中字符串的操作方法大全

    python中字符串的操作方法大全

    这篇文章主要给大家介绍了关于python中字符串操作方法的相关资料,文中通过示例代码详细介绍了关于python中字符串的大小写转换、isXXX判断、填充、子串搜索、替换、分割、join以及修剪:strip、lstrip和rstrip的相关内容,需要的朋友可以参考下
    2018-06-06
  • 跟老齐学Python之深入变量和引用对象

    跟老齐学Python之深入变量和引用对象

    本讲再次提及变量和引用对象,就是要让看官对变量和赋值有一个知其然和知其所以然的认识。当然,最后能不能达到此目的,主要看我是不是说的通俗易懂了。如果您没有明白,就说明我说的还不够好,可以联系我,我再为您效劳。
    2014-09-09
  • python类中super()和__init__()的区别

    python类中super()和__init__()的区别

    这篇文章主要介绍了python类中super()和__init__()的区别,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • Python中下划线的使用方法

    Python中下划线的使用方法

    这篇文章主要介绍了Python中下划线的使用方法,是为python编程学习中的基本知识,需要的朋友可以参考下
    2015-03-03

最新评论