Python 标准类库-数字和数学模块之decimal使用简介
程序员文章站
2022-06-07 11:02:17
标准类库-数字和数学模块之decimal使用简介 by:授客 QQ:1033553122 例子 >>>from decimal import * >>>getcontext() Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax ......
标准类库-数字和数学模块之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('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()设置的精度时,才会舍去超过精度部分的小数位数