>>> a = 5.026
>>> b = 5.000
#round()浮点数四舍五入以及设定其小数位数
>>> round(a,2)
5.03
>>> round(b,2)
5.0
#字符串格式化"%.2f"的使用,点数后为精度,此时精度为2
>>> "%.2f" % a
'5.03'
>>> "%.2f" % b
'5.00'
>>> float("%.2f" % a)
5.03
>>> float("%.2f" % b)
5.0
#Decimal的使用
>>> from decimal import Decimal
>>> Decimal("5.026").quantize(Decimal("0.00"))
Decimal('5.03')
>>> Decimal("5.000").quantize(Decimal("0.00"))
Decimal('5.00')
这里有三种方法,
round(a,2)
'%.2f' % a #方法最好
Decimal('5.000').quantize(Decimal('0.00')) #其次
当需要输出的结果要求有两位小数的时候,字符串形式的:'%.2f' % a 方式最好,其次用Decimal。
需要注意的:
1. 可以传递给Decimal整型或者字符串参数,但不能是浮点数据,因为浮点数据本身就不准确。
2. Decimal还可以用来限定数据的总位数。
参考文稿: