编程语言
首页 > 编程语言> > python 浮点数四舍六入五成双

python 浮点数四舍六入五成双

作者:互联网

问题
a = 0.215
b = 0.225
print round(a, 2)
print round(b, 2)

# 执行结果
0.21
0.23
原因
解决四舍五入精度问题
#!/usr/bin/python
# -*- encoding: utf-8 -*-
from decimal import Decimal
import decimal

# 四舍五入,保留2位小数
def setDecimal(data, dec_place='0.00'):
    return Decimal(data).quantize(Decimal(dec_place), rounding=decimal.ROUND_HALF_UP)

a = '0.215'
b = '0.225'

print round(setDecimal(a), 2)
print round(setDecimal(b), 2)

# 输出结果
0.22
0.23

标签:六入,四舍五入,python,浮点数,精确,round,进位,小数
来源: https://www.cnblogs.com/gxfaxe/p/14970856.html