• Python模块-decimal


    Python提供了decimal模块用于十进制数学计算,它具有以下特点:

    1. 提供十进制数据类型,并且存储为十进制数序列;
    2. 有界精度:用于存储数字的位数是固定的,可以通过decimal.getcontext().prec=x 来设定,不同的数字可以有不同的精度
    3. 浮点:十进制小数点的位置不固定(但位数是固定的)

    decimal的构建:

    可以通过整数、字符串或者元组构建decimal.Decimal,对于浮点数需要先将其转换为字符串

    decimal的context:

    decimal在一个独立的context下工作,可以通过getcontext来获取当前环境。例如前面提到的可以通过decimal.getcontext().prec来设定小数点精度(默认为28)

    from  decimal import Decimal
    from  decimal import getcontext
    
    d_context = getcontext()
    d_context.prec = 6
    print(d_context)
    
    d = Decimal(1) / Decimal(3)
    print(type(d), d)

    log:

    Context(prec=6, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow])
    <class 'decimal.Decimal'> 0.333333
  • 相关阅读:
    内置函数——filter和map
    递归函数
    内置函数和匿名函数
    迭代器和生成器
    装饰器函数
    函数进阶
    COGS 2533. [HZOI 2016]小鱼之美
    COGS 2532. [HZOI 2016]树之美 树形dp
    COGS2531. [HZOI 2016]函数的美 打表+欧拉函数
    bzoj1303: [CQOI2009]中位数图
  • 原文地址:https://www.cnblogs.com/keqipu/p/7229350.html
Copyright © 2020-2023  润新知