原文: How to Round to 2 Decimal Places in Python

Python 为数学运算提供了许多数学方法,如平方根、指数等等。

在这篇文章中,我将向你展示如何将一个数字四舍五入到指定的小数位。

什么是小数位

请看这个数字:324.89

这里的每个数字都有一个位置,被称为位置值,在这个数字中:

  • 3 是百位
  • 2 是十位
  • 4 是个位
  • 8 是十分之一位
  • 9 是百分之一位

在小数点之后,你有两个数字: 8 和 9。一个数字的小数位是指小数点之后的位置(在它的右边)。

这个定义意味着 8(十分之一的位置)的小数位是 1,9(百分之一的位置)的小数位是 2。

如何四舍五入到某一小数位

那么,四舍五入到小数点后某位是什么意思?这意味着,你要根据小数点后的数字,把小数点后的数字四舍五入。

如果小数点后的数字是 5 或更多,则小数点后的数字被四舍五入 +1。否则,小数点后的数字保持不变,小数点后的数字被四舍五入为 0。

例如,假设我们想把 24.89 四舍五入到小数点后 1 位。或者你可以把它说成是把 24.89 四舍五入到最近的十分之一。

数字 8 在小数点后 1 位,8 后面的数字是 9。由于 9 比 5 多,24.89,四舍五入到最近的十分之一将是 24.9。

再比如,我们把 24.82 四舍五入到小数点后 1 位(最近的十分之一)。由于 2 不比 5 大,8 保持不变,2 被四舍五入——结果是 24.8。

如何在 Python 中四舍五入小数位

现在你了解了如何四舍五入小数位,让我们看看如何在 Python 中做到这一点。

你可以使用全局 round 函数将数字四舍五入到小数位,其语法是:

round(number, decimal_point)

该函数接受数字和 decimal_point 作为参数。decimal_point 指定了你想四舍五入的小数位。让我们看一个例子:

num = 24.89

rounded = round(num, 1)
print(rounded)

# 24.9

下面是另一个较长数字的例子:

num = 20.4454

rounded3 = round(num, 3)
# to 3 decimal places

rounded2 = round(num, 2)
# to 2 decimal places

print(rounded3)
# 20.445

print(rounded2)
# 20.45

对于 rounded3num 被四舍五入到小数点后 3 位。小数点后第 3 位是 5,后面的数字是 4,由于 4 不大于 5,所以数字 5 保持不变,4 被四舍五入为 0。

对于 rounded2,数字被四舍五入到小数点后 2 位。小数点后第 2 位是 4,后面的数字是 5,由于这个数字大于或等于 5,数字 4 被四舍五入为 5。

总结

四舍五入对于将浮动的数字保持在固定的位数内是很有用的。

例如,这对只接受两位小数的货币(如美元:100.99 美元)很有用。如果一个产品的计算结果是 50.678 美元,你可能想把它四舍五入到小数点后 2 位,比如:50.68 美元。这样一来,给别人提供实际的货币值会更容易。

在这篇文章中,我简要地解释了什么是小数位,以及如何在 Python 中把数字四舍五入到某个小数位。