欢迎访问宙启技术站
智能推送

round()函数使用方法和示例

发布时间:2023-06-10 16:41:06

round()函数是Python内置的函数之一,该函数用于对浮点数进行四舍五入的操作。round()函数可以取一个浮点数,并返回一个最接近的整数。

round()函数的语法如下:

round(number[,ndigits])

其中,number为需要进行四舍五入的数值;ndigits为可选参数,表示四舍五入后的小数点位数。默认为0。如果ndigits为正数,则表示保留小数点位数;如果为负数,则表示进行四舍五入后保留的整数位数,而小数部分将为0。

接下来,我们将从以下几个方面介绍round()函数的使用方法和示例:

1. 对整数进行四舍五入

对于整数,可以直接使用round()函数来进行四舍五入。例如:

print(round(10.4))    # 输出:10
print(round(10.6))    # 输出:11

2. 对浮点数进行四舍五入

对于浮点数,也可以使用round()函数来进行四舍五入。例如:

print(round(3.1415926, 2))    # 输出:3.14
print(round(3.1415926, 4))    # 输出:3.1416

在第一个例子中,ndigits为2,因此结果保留两位小数,即进行了四舍五入。

在第二个例子中,ndigits为4,因此结果保留四位小数,即进行了四舍五入。

3. 对负数进行四舍五入

对于负数,同样可以使用round()函数来进行四舍五入。例如:

print(round(-10.4))    # 输出:-10
print(round(-10.6))    # 输出:-11

对于负数进行四舍五入时,注意结果的符号。

4. 对零进行四舍五入

对于0.5这样的数值,很多人会期望结果为1。但是,在Python中,0.5会被四舍五入到0,而-0.5会被四舍五入到-1。例如:

print(round(0.5))     # 输出:0
print(round(-0.5))    # 输出:-1

这是因为Python中使用的是“银行家舍入”(Banker's Rounding)策略,也就是当被舍弃的位数为5时,会选择最接近偶数的结果。

5. 小数位数不足时的处理方法

当需要保留的小数位数大于原数值的小数位数时,round()函数会在小数位后补0。例如:

print(round(3.1, 2))    # 输出:3.10

可以使用字符串格式化的方式来去掉无意义的0。例如:

print("{:.2f}".format(round(3.1, 2)))    # 输出:3.1

6. 负数四舍五入时保留正数位数

当需要对负数进行四舍五入时,可能希望结果保留正数位数,而不是负数位数。我们可以用以下方式来实现:

def my_round(x, ndigits):
    p = 10 ** ndigits
    return round(x * p) / p

print(my_round(-3.1415926, 2))    # 输出:-3.14
print(my_round(-3.1415926, 4))    # 输出:-3.1416

在上面的代码中,my_round()函数将原数值乘以10的ndigits次方后进行四舍五入,然后再除以10的ndigits次方,从而保留了正数位数。

总结:

round()函数是Python内置的函数之一,在对浮点数进行四舍五入时非常有用。但是,在使用该函数时需要注意一些细节,比如对负数的处理和小数位数不足时的处理等。熟练掌握round()函数的使用方法,可以帮助我们写出更加优雅的Python代码。