导航

Python3中保留小数点特定数目的方法

Posted on 2019-07-22 10:55  苏格拉底编程器  阅读(2668)  评论(0)    收藏  举报

方法一:round() function:

a = 1.23456

b = 2.355

c = 3.5

d = 2.5

print(round(a,3))

print(round(b,2))

print(round(c))

print(round(d))

结果:

1.235

2.35

4

2

结论:

  • round(flo,n)函数中,如果目标为小数点后值,博主认为需要考虑两个值。第一是n & 第二是n+1,如果n值为奇数,则会四舍五入;而n值为偶数,则不会。但是我测试了下,只要元值小数点后位数多于3位(如b),那么计算结果会四舍五入。
  • round(flo,n)函数中,如果目标输出integer,那么整数部分如为奇数,则会四舍五入;如整数部分是偶数,则不会四舍五入。
  • 这个函数实际用处在哪里?

方法二:“%.nf”% flo

a = 234.405691209412

print("%.2f" % a)

print("%.3f" % a)

print("%.4f" % a)

结果:

234.41

234.406

234.4057

结论:省心!

注:

  • 其他文中的方法对于针对解决小数点后位数四舍五入的实际处理并不效率,就不予记录回顾了。
  • Decimal函数在Python3我竟然没有找到。

参考文章:

https://www.cnblogs.com/klb561/p/10029946.html