Python中的取整、取余运算方法

 更新时间:2022年11月22日 10:03:31   作者:芜湖起飞飛飝  
数据处理是编程中不可避免的,很多时候都需要根据需求把获取到的数据进行处理,取整则是最基本的数据处理。取整的方式则包括向下取整、四舍五入、向上取整等等,这篇文章主要介绍了Python中的取整、取余运算,需要的朋友可以参考下

1.取整运算

在Python中取整运算的运算符为//,且取整运算的取整为向下取整,不进行四舍五入
例:9//4=2,即9对4取整等于2
-9//-4=2,因为-9÷-4=2.25,取整为2
那么问题来了,9//-4等于多少呢?
9//-4=-3,因为9÷-4应该等于-2.25,那么对-2.25向下取整,应该为-3,而不是-2,所以9//-4=-3
那么-9//4呢?
-9÷4也应该等于-2.25,所以向下取整,得到-9//4=-3
总结:
9//4=2
-9//-4=2
9//-4=-3
-9//4=-3

2.取余运算

在Python中取余运算的运算符为%,取余的结果为,被除数整除除数后余下的数
例:9%4=1,即9对4取余为1,因为9÷4=2···1,即9除以4等于2余1,所以9%4=1
那么问题又又又来了,-9%-4等于多少?9%-4等于多少?-9%4等于多少?
这是就要用到一个公式了,在Python中,余数的计算公式:a % b = a - a // b * b
即a对b取余的余数 等于 a减去 a先对b取整,再乘以b ,即为a对b取余的余数
那么-9%-4,就等于-9-(-9//-4*-4),等于-1,即-9%-4=-1
9%-4,就等于9-(9//-4*-4),等于-3,即9%-4=-3
-9%4,就等于-9-(-9//4*4),等于3,即-9%4=3
总结:
9%4=1
-9%-4=-1
9%-4=-3
-9%4=3

Python 几种取整的方法

数据处理是编程中不可避免的,很多时候都需要根据需求把获取到的数据进行处理,取整则是最基本的数据处理。取整的方式则包括向下取整、四舍五入、向上取整等等。

1、向下取整

向下取整直接用内建的 int() 函数即可:

>>> a = 3.75
>>> int(a)
3

2、四舍五入

对数字进行四舍五入用 round() 函数:

>>> round(3.25); round(4.85)
3.0
5.0

3、向上取整

向上取整需要用到 math 模块中的 ceil() 方法:

>>> import math
>>> math.ceil(3.25)
4.0
>>> math.ceil(3.75)
4.0
>>> math.ceil(4.85)
5.0

4、分别取整数部分和小数部分

有时候我们可能需要分别获取整数部分和小数部分,这时可以用 math 模块中的 modf() 方法,该方法返回一个包含小数部分和整数部分的元组:

>>> import math
>>> math.modf(3.25)
(0.25, 3.0)
>>> math.modf(3.75)
(0.75, 3.0)
>>> math.modf(4.2)
(0.20000000000000018, 4.0)

有人可能会对最后一个输出结果感到诧异,按理说它应该返回 (0.2, 4.0) 才对。这里涉及到了另一个问题,即浮点数在计算机中的表示,在计算机中是无法精确的表示小数的,至少目前的计算机做不到这一点。上例中最后的输出结果只是 0.2 在计算中的近似表示。Python 和 C 一样, 采用 IEEE 754 规范来存储浮点数,如果希望更详细的了解这一点可以参考下面资料。

参考资料

为什么0.1+0.2=0.30000000000000004而1.1+2.2=3.3000000000000003?.

到此这篇关于Python中的取整、取余运算的文章就介绍到这了,更多相关Python取整、取余运算内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 10款最好的Web开发的 Python 框架

    10款最好的Web开发的 Python 框架

    这篇文章主要介绍了10款最好的Web开发的 Python 框架,总结的都是非常常用的而且评价都非常不错的框架,需要的朋友可以参考下
    2015-03-03
  • 启动targetcli时遇到错误解决办法

    启动targetcli时遇到错误解决办法

    这篇文章主要介绍了启动targetcli时遇到错误解决办法的相关资料,希望通过本文能帮助到大家,让大家遇到这样的错误解决,需要的朋友可以参考下
    2017-10-10
  • Numpy 数组索引的实现

    Numpy 数组索引的实现

    本文主要介绍了Numpy 数组索引的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Python+Yolov5人脸口罩识别的详细步骤

    Python+Yolov5人脸口罩识别的详细步骤

    人脸口罩佩戴检测(识别)是当前急需的应用,而YOLOv5是目前流行的强悍的目标检测技术,下面这篇文章主要给大家介绍了关于Python+Yolov5人脸口罩识别的相关资料,需要的朋友可以参考下
    2022-12-12
  • 利用Python实现简单的相似图片搜索的教程

    利用Python实现简单的相似图片搜索的教程

    这篇文章主要介绍了利用Python实现简单的相似图片搜索的教程,文中的示例主要在一个图片指纹数据库中实现,需要的朋友可以参考下
    2015-04-04
  • pycharm必知的一些简单设置方法

    pycharm必知的一些简单设置方法

    这篇文章主要介绍了pycharm必知的一些简单设置方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Python闭包的两个注意事项(推荐)

    Python闭包的两个注意事项(推荐)

    闭包就是根据不同的配置信息得到不同的结果。下面通过本文给大家分享Python闭包的两个注意事项,需要的朋友参考下
    2017-03-03
  • Python爬虫实战之用selenium爬取某旅游网站

    Python爬虫实战之用selenium爬取某旅游网站

    上一篇我们已经知道怎么简单使用selenium了,那么我们就从这篇博客来动手爬取网站吧,文中有非常详细的代码示例,需要的朋友可以参考下
    2021-06-06
  • Django前端BootCSS实现分页的方法

    Django前端BootCSS实现分页的方法

    本文主要介绍了Django前端BootCSS实现分页的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Python+Pika+RabbitMQ环境部署及实现工作队列的实例教程

    Python+Pika+RabbitMQ环境部署及实现工作队列的实例教程

    RabbitMQ是一个消息队列服务器,在本文中我们将学习到Python+Pika+RabbitMQ环境部署及实现工作队列的实例教程,需要的朋友可以参考下
    2016-06-06

最新评论