天天看点

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

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

by:授客 QQ:1033553122

例子

>>>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('1.66667')

>>>getcontext().prec = 2

Decimal('1.7')

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

>>>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()设置的精度时,才会舍去超过精度部分的小数位数

作者:授客

QQ:1033553122

全国软件测试QQ交流群:7156436

Git地址:https://gitee.com/ishouke

友情提示:限于时间仓促,文中可能存在错误,欢迎指正、评论!

作者五行缺钱,如果觉得文章对您有帮助,请扫描下边的二维码打赏作者,金额随意,您的支持将是我继续创作的源动力,打赏后如有任何疑问,请联系我!!!

           微信打赏                       

支付宝打赏                  全国软件测试交流QQ群  

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