如何在Python中进行数字舍入?


Python 有一个内置的 `round()` 函数用于对数字进行舍入。

Python 中的 `round()` 方法接受两个参数:

  • 第一个参数是要舍入的数字。

  • 第二个参数指定要将数字舍入到的位数。

第二个参数是可选的。

如果未指定第二个参数,则 `round()` 方法使用 `floor()` 和 `ceil()` 返回整数。

它将查找小数点后的数字。

  • 如果这些数字小于 5,则返回传递数字的 `floor()` 值。

  • 而如果小数点后的数字大于 5,则返回传递数字的 `ceil()` 值。

  • 如果传递的是整数,则返回相同的数字。

从下面的实现中将会更加清晰:

当第二个参数不存在时,`round()` 函数。

要舍入的数字被传递给 `round()` 函数。在这种情况下,`round()` 的输出将始终为整数值。

让我们通过一个例子来理解。

示例

 在线演示

print(round(15))
print(round(15.2))
print(round(15.8))
print(round(15.128))
print(round(15.89))

输出

15
15
16
15
16

解释

所有 print 语句的解释:

  • 传递整数 15,返回相同的整数,因此输出为 15。

  • 传递数字 15.2,小数点后的数字小于 5,因此返回 15.2 的 floor 值,因此输出为 15。

  • 传递数字 15.8,小数点后的数字大于 5,因此返回 15.8 的 ceil 值,因此输出为 16。

  • 传递数字 15.128,小数点后的数字小于 500,因此返回 15.128 的 floor 值,因此输出为 15。

  • 传递数字 15.89,小数点后的数字大于 50,因此返回 15.89 的 ceil 值,因此输出为 16。

注意:所有输出都是整数值。

当第二个参数存在时,`round()` 函数

第二个参数给出要将数字舍入到的位数。

示例

 在线演示

print(round(15,2))
print(round(15.2789,3))
print(round(15.82,1))
print(round(15.128,2))
print(round(15.8902,2))

输出

15
15.279
15.8
15.13
15.89

在这种情况下,`round()` 函数的工作方式与我们数学上计算数字舍入的方式相同。

对于整数值,返回相同的整数值;否则,返回舍入到指定位数的小数。

解释

  • 数字是 15.2789,位数是 3。小数点后的第四位数字大于 5,因此第三位数字(最后指定的数字)将加 1。因此,输出将为 15.279。

  • 数字是 15.82,位数是 1。小数点后的第二位数字小于 5,因此第一位数字不会加 1。因此,输出将为 15.8。

更新于:2021年3月10日

752 次浏览

启动你的职业生涯

通过完成课程获得认证

开始学习
广告