python中decimal模块的具体使用

 更新时间:2023年01月29日 08:51:02   作者:&星火  
本文主要介绍了python中decimal模块的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

decimal模块主要的作用是精确小数,因为float是不精确的,只是无限接近,对于一些需要精确小数点后位数的就需要用decimal。

Decimal类型的优点

Decimal类型是在浮点类型的基础上设计的,但是它在几个地方上要优于floating point:

  • Decimal类型可以非常精确地在计算机中存储,浮点型在计算机中是无法精确存储的,后面的小数会不精确,Decimal类型则不会出现这种情况。同样,由于无法精确存储,浮点型也就无法精确计算。
  • Decimal类型会自动保留小数点后面不需要的0,以与输入的精度相匹配,比如:浮点型的1.20+1.30结果是2.5;而Decimal类型结果是2.50。
  • Decimal类型可以根据需要自己设置小数点后精度。通过getcontext().prec = x (x为你想要的精度来设置)。
  • Decimal类型有很强的管理功能,它能够根据需要设置,来控制输出的格式,得到或者忽略某类错误(如除0,可以设置忽略它,而得到一个Infinity的Decimal值)

示例1:

from decimal import Decimal
result=Decimal("3.01")+Decimal("3.02") #Decimal()的参数必须是字符串型
print(result)

运行结果:

6.03

示例2:

from decimal import Decimal,getcontext
getcontext().prec=5          #利用getcontext().prec设定有效数字
result=Decimal("10")/Decimal("3")
print(result)

运行结果:

3.3333

示例3:

from decimal import Decimal
result=Decimal(0.123456789).quantize(Decimal("0.0000"))  #quantize:设置小数位数
print(result)

运行结果:

0.1235

参考链接:

1.python中的decimal模块

到此这篇关于python中decimal模块的具体使用的文章就介绍到这了,更多相关python decimal模块内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决

    不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决

    这篇文章主要给大家介绍了关于不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决方法,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-09-09
  • 如何解决tensorflow恢复模型的特定值时出错

    如何解决tensorflow恢复模型的特定值时出错

    今天小编就为大家分享一篇如何解决tensorflow恢复模型的特定值时出错,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 详解pycharm2020.1.1专业版安装指南(推荐)

    详解pycharm2020.1.1专业版安装指南(推荐)

    这篇文章主要介绍了pycharm2020.1.1专业版安装指南,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • 基于Python实现Word文档与SVG格式的相互转换

    基于Python实现Word文档与SVG格式的相互转换

    Word和SVG是两种常见的文件格式,各自有不同的应用场景,在实际应用中,我们可能需要将Word文档内容转换为SVG图形用于网页展示,或者将 SVG图形嵌入到Word文档中进行编辑和排版,这篇博客将探讨如何使用Python实现Word与SVG 格式的相互转换,需要的朋友可以参考下
    2025-02-02
  • Python基于列表list实现的CRUD操作功能示例

    Python基于列表list实现的CRUD操作功能示例

    这篇文章主要介绍了Python列表list实现的CRUD操作功能,结合实例形式分析了Python基于列表list实现用户数据CRUD相关操作技巧,需要的朋友可以参考下
    2018-01-01
  • Python使用thread模块实现多线程的操作

    Python使用thread模块实现多线程的操作

    线程(Threads)是操作系统提供的一种轻量级的执行单元,可以在一个进程内并发执行多个任务,每个线程都有自己的执行上下文,包括栈、寄存器和程序计数器,本文给大家介绍了Python使用thread模块实现多线程的操作,需要的朋友可以参考下
    2024-10-10
  • Python+matplotlib绘制多子图的方法详解

    Python+matplotlib绘制多子图的方法详解

    Matplotlib是Python中最受欢迎的数据可视化软件包之一,它是 Python常用的2D绘图库,同时它也提供了一部分3D绘图接口。本文将详细介绍如何通过Matplotlib绘制多子图,需要的可以参考一下
    2022-07-07
  • Python制作动态词频条形图的全过程

    Python制作动态词频条形图的全过程

    说起动态图表,最火的莫过于动态条形图了,下面这篇文章主要给大家介绍了关于Python制作动态词频条形图的全过程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-11-11
  • python 生成不重复的随机数的代码

    python 生成不重复的随机数的代码

    用的是筛选法,网上有解释,简单的说 就是先随机生成一串数字,之后用下标来判断这些数字有没有重复,重复的就筛去
    2011-05-05
  • Python中如何给字典设置默认值

    Python中如何给字典设置默认值

    这篇文章主要介绍了Python中如何给字典设置默认值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02

最新评论