zoukankan      html  css  js  c++  java
  • Python 标准类库-数字和数学模块之decimal使用简介

    标准类库-数字和数学模块之decimal使用简介

    by:授客 QQ1033553122

    例子

    >>>from decimal import *

    >>>getcontext()

    Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow])

     

    >>>Decimal('5')/3

    Decimal('1.666666666666666666666666667')

     

    >>>getcontext().prec = 6 # 设置精度,即最大小数位数

     

    >>>Decimal('5')/3

    Decimal('1.66667')

    >>>getcontext().prec = 2

    >>>Decimal('5')/3

    Decimal('1.7')

    >>>Decimal('5')/Decimal(3)

    Decimal('1.7')

     

    >>>Decimal('3.14')

    Decimal('3.14')

     

    >>>Decimal('3.14') * Decimal(0.5)

    Decimal('1.570')

     

    >>>Decimal('3.1415926535')

    Decimal('3.1415926535')

     

    >>>Decimal('NaN')

    Decimal('NaN')

     

    >>>Decimal('-Infinity')

    Decimal('-Infinity')

     

    结论:当且仅当“计算结果”小数位数超过getcontext()设置的精度时,才会舍去超过精度部分的小数位数

  • 相关阅读:
    Apollo与ROS
    QT windeployqt
    自定义QGraphicsItem
    ROS与C++
    aptitude与apt-get
    解决tcp粘包问题
    网络中两台主机通信
    I/O多路复用之select、poll、epoll
    Nginx命令行控制
    C++11
  • 原文地址:https://www.cnblogs.com/shouke/p/11776300.html
Copyright © 2011-2022 走看看