如何使用 Python 将浮点数向下舍入到小数点后 2 位?


在本文中,我们将向您展示如何在 Python 中将浮点数四舍五入到2位小数。以下是完成此任务的各种方法

  • 使用 round() 函数

  • 使用 format() 函数

  • 使用 Decimal 模块

  • 使用 ceil() 函数

使用 round() 函数

round() 函数 提供一个带有指定小数位数的浮点数,它是指定数字的四舍五入版本。

由于小数位数的默认值为 0,因此该函数将返回最接近的整数。

语法

round(number, digits)

参数

  • number(必填) - 应四舍五入的数字

  • digits(可选) - 要四舍五入的小数位数。默认为 0。

算法(步骤)

以下是执行所需任务的算法/步骤 -。

  • 创建一个变量来存储输入数字。

  • 将输入number、2(小数值)作为参数传递给 round() 函数,以将输入数字四舍五入到小数点后 2 位。

  • 打印输入浮点数四舍五入到2位小数后的值。

示例

以下程序使用 round() 函数返回输入浮点数四舍五入到小数点后 2 位的值 -

# input floating-point number inputNumber = 3.367824 # rounding the number up to 2 decimal places roundedNumber = round(inputNumber, 2) # print the rounded value of floating-point number up to 2 decimals print("Rounding 3.367824 upto 2 decimal places:", roundedNumber)

输出

执行上述程序后,将生成以下输出 -

Rounding 3.367824 upto 2 decimal places: 3.37

使用 format() 函数

算法(步骤)

以下是执行所需任务的算法/步骤 -。

  • 创建一个变量来存储输入浮点数。

  • 使用 format() 函数(它根据格式说明符返回指定输入值的格式化版本)通过将输入数字、格式(最多到小数点后 2 位)作为参数传递给它来将数字四舍五入到小数点后 2 位。

示例

以下程序使用 format() 函数返回输入浮点数四舍五入到小数点后 2 位的值 -

# input floating-point number inputNumber = 4.56782 # rounding the number upto 2 decimal places print("Rounding 4.56782 upto 2 decimal places:", format(inputNumber,".2f"))

输出

执行上述程序后,将生成以下输出 -

Rounding 4.56782 upto 2 decimal places: 4.57

使用 Decimal 模块

Python 的decimal 模块有助于提高浮点数的精度。要使用此decimal模块,我们必须导入它。

decimal.Decimal(floatnumber) - 默认情况下提供一个 50 位小数的值。

这里我们使用value.quantize(decimal.Decimal('0.00')) 将小数点后四舍五入到2位。

算法(步骤)

以下是执行所需任务的算法/步骤 -。

  • 使用 import 关键字导入decimal模块。

  • 创建一个变量来存储输入浮点数。

  • 使用decimal模块的 Decimal() 函数转换给定的浮点数。

  • 使用 value.quantize(decimal.Decimal()) 函数将数字四舍五入到小数点后 2 位(这里是小数点后 2 位,因此我们在小数点后给出 2 个零)。

  • 打印输入浮点数

  • 打印输入数字四舍五入到小数点后 2 位的值。

示例

以下程序使用 decimal 模块返回输入浮点数四舍五入到小数点后 2 位的值 -

# importing decimal module import decimal # input floating-point number inputNumber = 35.65782 # Converting the given number to decimal decimalValue = decimal.Decimal(inputNumber) # rounding the number upto 2 digits after the decimal point roundedNumber = decimalValue.quantize(decimal.Decimal('0.00')) # printing the input floating-point number print("Input floating-point number: ", inputNumber) # printing the rounded value of the input number upto 2 decimal places print("Rounding 35.65782 upto 2 decimal places:", roundedNumber)

输出

执行上述程序后,将生成以下输出 -

Input floating-point number: 35.65782
Rounding 35.65782 upto 2 decimal places: 35.66

使用 ceil() 函数

算法(步骤)

以下是执行所需任务的算法/步骤 -。

  • 使用 import 关键字导入math 模块

  • 创建一个变量来存储输入浮点数。

  • 使用ceil() 函数(返回数字的上限值,即大于或等于数字的最小整数)将数字四舍五入到小数点后 2 位,并打印结果数字。

If you want to round upto 1, 2, 3, 4...decimals then multiply and divide by
# 10, 100, 1000, 10000 numbers respectively

示例

以下程序使用 ceil() 函数返回输入浮点数四舍五入到小数点后 2 位的值 -

# importing math module import math # input floating-point number inputNumber = 4.56782 # rounding the number upto 2 decimal places using ceil() function # If you want to round upto 1, 2, 3, 4...decimals then multiply and divide by # 10, 100, 1000, 10000 numbers respectively print("Rounding 4.56782 upto 2 decimal places:") print(math.ceil(inputNumber*100)/100)

输出

执行上述程序后,将生成以下输出 -

Input floating-point number: 35.65782
Rounding 4.56782 upto 2 decimal places:
4.57

结论

在本文中,我们学习了如何使用四种不同的方法将给定的浮点数在Python中四舍五入到两位小数。使用 ceil 函数和一些数学逻辑,我们学习了如何四舍五入到两位小数。我们还学习了如何使用 decimal 模块将给定的浮点数转换为十进制数并对其进行量化。

更新于: 2023-08-29

163K+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告