如何在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()函数
算法(步骤)
以下是执行所需任务的算法/步骤。
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模块将给定的浮点数转换为十进制数并进行量化。