python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python保留两位小数

python保留两位小数的3种方法实例

作者:Y_fulture

保留小数位是我们经常会碰到的问题,尤其是刷题过程中,下面这篇文章主要给大家介绍了关于python保留两位小数的3种方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

1.’%.2f’%f

该方法会进行四舍五入

代码如下所示:

f = 2.3456789

print('%.2f'%f)
print('%.3f'%f)
print('%.4f'%f)

结果如下所示

2.35
2.346
2.3457

2.format函数

该方法也会进行四舍五入

代码如下所示:

f = 2.3456789

print('{:.2f}'.format(f))
print('{:.3f}'.format(f))
print('{:.4f}'.format(f))

结果如下图所示

2.35
2.346
2.3457

3.round函数(不推荐使用)

round函数带有一点点的小坑,不是很推荐使用

round函数的进位规则一般为’四舍六入五凑偶’

代码如下图所示:

print(round(2.25,1))
print(round(2.35,1))
print(round(2.125,2))
print(round(2.875,2))

结果如下图所示:

2.2
2.4
2.12
2.88

这与我们的结论没有出入,但我们换一下数据,再看一下结果

print(round(2.335,2))
print(round(2.225,2))

2.33
2.23

这里就与我们的结论不一致,原因是在机器中浮点数不一定被精确的表达,在转换成01后可能为无限位,机器会进行截断处理,所以会和浮点数的精确值有一定的出入,从而达不到我们预期的目标

所以如果对浮点数没有精度要求时可以使用round函数

如果对浮点数的精度要求较高,推荐使用decimal模块

附:Python round() 函数

描述

round() 方法返回浮点数x的四舍五入值。

语法

以下是 round() 方法的语法:

round( x [, n]  )

参数

返回值

返回浮点数x的四舍五入值。

实例

以下展示了使用 round() 方法的实例:

#!/usr/bin/python

print "round(80.23456, 2) : ", round(80.23456, 2)
print "round(100.000056, 3) : ", round(100.000056, 3)
print "round(-100.000056, 3) : ", round(-100.000056, 3)

以上实例运行后输出结果为:

round(80.23456, 2) :  80.23
round(100.000056, 3) :  100.0
round(-100.000056, 3) :  -100.0

总结

到此这篇关于python保留两位小数的3种方法的文章就介绍到这了,更多相关python保留两位小数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文