round(number[, ndigits])
返回 number 舍入到小数点后 ndigits 位精度的值。 如果 ndigits 被省略或为 None,则返回最接近输入值的整数。
对于支持 round() 的内置类型,值会被舍入到最接近的 10 的负 ndigits 次幂的倍数;如果与两个倍数的距离相等,则选择偶数 (因此,round(0.5) 和 round(-0.5) 均为 0 而 round(1.5) 为 2)。 任何整数值都可作为有效的 ndigits (正数、零或负数)。 如果 ndigits 被省略或为 None 则返回值将为整数。 否则返回值与 number 的类型相同。
对于一般的 Python 对象 number, round 将委托给 number.round。
注解:
对浮点数执行 round() 的行为可能会令人惊讶:例如,round(2.675, 2) 将给出 2.67 而不是期望的 2.68。 这不算是程序错误:这一结果是由于大多数十进制小数实际上都不能以浮点数精确地表示。 请参阅 浮点算术:争议和限制 了解更多信息。
实例:
print("round(3.14159, 3):", round(3.14159, 3))
print("round(100.000056, 3):", round(100.000056, 3))
print("round(-100.000056, 3):", round(-100.000056, 3))
以上代码输出结果为:
round(3.14159, 3): 3.142
round(100.000056, 3): 100.0
round(-100.000056, 3): -100.0