python中round函数_round函数

Python内置的round函数,用来取小数点后N位,还是很方便的。但是要注意,round函数执行的不是四舍五入。请参考:Python实现四舍五入的方法。

看代码吧,要注意round函数在去小数点后N位时,N可以是负数:

>>> round(0.123456)

>>> 0 # integer type

>>> round(0.123456, 1)

0.1

>>> round(0.123456, 2)

0.12

>>> round(0.123456, 3)

0.123

>>> round(0.123456, 4)

0.1235

>>> round(0.123456, 5)

0.12346

>>>

>>> round(123456.12, -1)

123460.0

>>> round(123456.12, -2)

123500.0

>>> round(123456.12, -3)

123000.0

>>> round(123456.12, -4)

120000.0

>>> round(123456.12, -5)

100000.0

>>> round(123456.12, -6)

0.0

>>> round(123456.12, -7)

0.0

当第2个参数为负数时,舍入发生在小数点的左边。没有第2个参数的时候,round函数返回的是int类型。

round函数的舍入,执行的是银行家舍入法,英文叫 ROUND HALF EVEN。

HALF EVEN的规则是:向最近的数据舍入,如果这个数字距离两边相等,取偶数。

>>> round(1.5)

2

>>> round(2.5)

2

>>> round(1.265,2)

1.26

>>> round(1.275,2)

1.27

1.265和1.275,在取小数点后两位的时候,不是1.27以及1.28,这不是错误。因为二进制的计算机本就不能精确表示十进制的小数。

在严格要求小数的四舍五入的场景下,不能使用round函数,如果要求不严格,只是要求取一个近似值,round函数就OK了,因为它使用起来最简单。

-- EOF --

你可能感兴趣的:(python中round函数)