Python-小数取整与小数四舍五入

Python-实现小数四舍五入

  • 前言
  • 1. round()函数
    • 1.1 round(num)取整
    • 1.2 round(num, 0)取值
    • 1.2 round(num, n)小数四舍五入
  • 2. int()函数取整
  • 3.ceil()与floor()函数取整


前言

本文主要记录Python-实现小数取整与小数四舍五入的相关笔记


1. round()函数

round()函数目前是使用较为广泛的四舍五入函数,尤其是在大数据处理中。函数的实现并不是简简单单的四舍五入,而是有如下几种使用方法。

1.1 round(num)取整

· 正值-整数部分是奇数的时候,小数部分满5进1;
· 正值-当整数部分为偶数的时候,小数部分超5才进1.
· 负值-先取绝对值,然后整数部分是奇数的时候,小数部分满5进1,最后添加“-”号;
· 负值–先取绝对值,然后当整数部分为偶数的时候,小数部分超5才进1,最后添加“-”号。

round(num)

示例及输出如下:
Python-小数取整与小数四舍五入_第1张图片

1.2 round(num, 0)取值

round()函数不止可以有以上用法,还可以在括号里再添加一个参数n,代表要保留的小数位数,此时round(num, n)函数返回的将不再是“int”类型的数据,而是“float”类型的数据,这里即便函数里参数里n取0,返回的也会是“float”类型数据,保留一位小数,小数位为0,比如round(2.3, 0)最终取值为2.0。

round(num, 0)

示例及输出如下:
Python-小数取整与小数四舍五入_第2张图片

1.2 round(num, n)小数四舍五入

当round(num, n)函数的n取值为大于0的整数时,此时规则也是按照传统上的奇数进位,偶数不进位来计算。

round(num, n)

但示例就不举了,因为浮点数在机器中的表达会影响最终结果,像如下的代码

print(round(7.55, 1))
print(round(7.65, 1))

最终结果的输出应当是7.6与7.6,但是实际输出会出现7.5与7.7的情况,出现了错误,所以round(num, n)函数在现在的机器中可能是会出现出错的。

2. int()函数取整

在python中,int()函数本身并不会四舍五入,直接使用int()函数直接就代表着向下取整,但这并不代表着使用int()函数不能实现四舍五入,我们可以在要四舍五入的数加上0.5再使用int()函数即可。

int(num)
int(num+0.5)
Python-小数取整与小数四舍五入_第3张图片

3.ceil()与floor()函数取整

这两个函数的使用都需要预先导入math模块,导入后即可使用
· ceil()函数向上取整
· floor()函数向下取整
示例及输出如下:
Python-小数取整与小数四舍五入_第4张图片

你可能感兴趣的:(Python基础,python,开发语言,后端)