Python 如何对浮点数进行四舍五入

Python 如何对浮点数进行四舍五入

在本文中,我们将向您展示如何在python中对浮点数进行四舍五入。

使用round()函数对浮点数进行四舍五入

round() 函数返回指定小数位数的浮点数,是指定数字的四舍五入版本。

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

语法

round(number, digits)

参数

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

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

Python有一个内置的函数 round() 用于这个目的。该函数接受两个参数:要四舍五入的数字和要四舍五入的小数位数。如果要将数字四舍五入到 最近的整数 ,则不给出第二个参数。

步骤

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

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

  • 使用 round() 函数通过将输入的数字作为参数来四舍五入输入的数字。

示例

以下程序使用round()函数返回输入数字的四舍五入值:

# input number
inputNum = 2.14357

# rounding up the input number using the round() function
print("rounding up", inputNum,":", round(inputNum))

输出

在执行上述程序后,将会生成以下输出结果 –

rounding up 2.14357 : 2

将0.5添加到round()函数中,然后进行四舍五入

在这个方法中,使用round()函数进行四舍五入之前,先将0.5添加到数字中

示例

# input number
inputNum = 2.14357

# adding 0.5 to the input number and then rounding up using the round() function
print("Adding 0.5 to", inputNum,"and then rounding up:", round(inputNum+0.5))

输出

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

Adding 0.5 to 2.14357 and then rounding up: 3

我们取一个浮点数,比如2.143,然后加上0.5(使得数变成2.6143>2.5),将其作为参数传递给round()函数。所以在这种情况下,round()函数将这个整数向上舍入,因为它超过了一半,即2.5,所以结果是3。

使用ceil()函数向上舍入浮点数

在Python中,方法 ceil(x) 返回大于或等于x的最小整数。这被称为x的上取整值。

语法

import math
math.ceil(x)

参数

  • x - 任意实数

返回值 - 返回不小于x的最小整数。

步骤

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

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

  • 使用 math.ceil() 函数获取一个数的向上取整值,即不小于该数的最小整数,将该数作为参数传递给该函数。

示例

以下程序返回给定浮点数的向上取整值,即最接近浮点数且不小于它的整数值。

# importing math module
import math

# getting the ceiling value of numbers using math.ceil()
print("Round-Up value of -12.11:", math.ceil(-12.11))
print("Round-Up value of 50.26:", math.ceil(50.26))
print("Round-Up value of 30.5:", math.ceil(30.5))
print("Round-Up value of 1.1:", math.ceil(1.1))

输出

执行上述程序后,将产生以下输出 –

Round-Up value of -12.11: -12
Round-Up value of 50.26: 51
Round-Up value of 30.5: 31
Round-Up value of 1.1: 2

使用布尔逻辑将浮点数四舍五入

示例

以下程序使用 bool() 函数返回输入数字的四舍五入值-

# input number
n = 3.4

# rounding up the number
print("rounding up the value of", n,":",int(n) + bool(n%1))

输出

执行上述程序时,将生成以下输出结果 –

rounding up the value of 3.4: 4

浮点数取整Decimal()函数

步骤

下面是执行所需任务的算法/步骤−

  • 使用import关键字从 decimal 模块中导入所有函数(使用*运算符导入所有函数)。

  • 使用 decimal()函数 (默认情况下给出一个包含50位数字的十进制值)将给定的数字转换为十进制数,然后使用quantize()函数将其量化。

示例

以下程序使用十进制模块的Decimal()函数返回输入浮点数的向上取整值−

# importig all functions from the decimal module
from decimal import *

# rounding up the number
print("the Round up value of 5.834 =",int(Decimal(5.834).quantize(Decimal('1.'), rounding=ROUND_UP)))

输出

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

the Round up value of 5.834 = 6

将浮点数通过int()函数向上取整

示例

以下程序使用int()函数返回输入浮点数的向上取整值:

# input number
n = 115.914

# rounding up the number
print("Round up value of ",n,"is",int(n) + ((int(n) - n) != 0))

输出

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

Round up value of 115.914 is 116

使用非运算符舍入浮点数

示例

下面的程序使用int()和is_integer()函数返回输入浮点数的向上取整值−

# input number
n = 5.3

# rounding up the number
result = int(n) + (not n.is_integer())

# priting the resultant rounded-up number
print("rounding up value of", n,":", result)

输出

执行之后,上述程序将生成以下输出结果 –

rounding up value of 5.3 : 6

结论

我们在本教程中介绍了Python中如何采用多种方法将给定的浮点数四舍五入。通过示例,我们还了解了round()方法,该方法用于四舍五入指定的整数。我们还学习了decimal模块,该模块允许我们将给定的浮点数转换为十进制并将其四舍五入。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程