round( )函数

noob_zxf 发布于 2015/09/02 16:44
阅读 117
收藏 0

输入round(1.005,2)得到的答案是1.0

输入round(1.006,2)得到的答案是1.01

输入round(1.5555,3)得到的答案是1.556

输入round(1.555,2)得到的答案是1.55

请问怎么解决这个问题,使得每次得到的都是想要的答案(四舍五入)?

加载中
0
junanhonglei
junanhonglei

使用decimal

round(1.555,2)
1.55
import decimal
>>decimal.Decimal(1.555)
Decimal('1.5549999999999999378275106209912337362766265869140625')
>>decimal.Decimal('1.555')
Decimal('1.555')
>>a =decimal.Decimal('1.555')
>>round(a,2)
Decimal('1.56')
junanhonglei
junanhonglei
回复 @alvy : a =decimal.Decimal('2.6785') round(a,3) Decimal('2.678') http://www.cnblogs.com/xiangnan/p/3430579.html
junanhonglei
junanhonglei
回复 @alvy : PY3
alvy
alvy
>>> a=decimal.Decimal('1.555') >>> round(a,2) 1.55 为什么我是这个结果?
返回顶部
顶部