zoukankan      html  css  js  c++  java
  • 98-Python-几种取整的方法

    Python 几种取整的方法

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

    1、向下取整

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

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

    2、四舍五入

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

    1 >>> round(3.25); round(4.85)
    2 3
    3 5

    3、向上取整

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

    1 >>> math.ceil(3.25)
    2 4
    3 >>> math.ceil(3.75)
    4 4
    5 >>> math.ceil(4.85)
    6 5

     

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

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

    1 >>> import math
    2 >>> math.modf(3.25)
    3 (0.25, 3.0)
    4 >>> math.modf(3.75)
    5 (0.75, 3.0)
    6 >>> math.modf(4.2)
    7 (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?.

    5、获取除法的整数和余数

      使用divmod()方法,返回一个包含商和余数的元组(a // b, a % b)。

    >>> ret = divmod(10, 3)
    >>> print(ret, type(ret))
    (3, 1) <class 'tuple'>
    
    >>> ret1 = divmod(9, 3)
    >>> print(ret1, type(ret1))
    (3, 0) <class 'tuple'>
  • 相关阅读:
    Docker下安装redis
    Goodnotes5
    Notability
    浏览器好用的技术
    苹果平板上好用的软件推荐
    苹果平板爱思助手检验安兔兔
    积分超过排名的第一天
    卸载Windows控制面板的程序和功能中找不到的一些软件的方法
    怎样在GitHub上新建一个文件夹
    Vim的常用操作
  • 原文地址:https://www.cnblogs.com/Druidchen/p/8067903.html
Copyright © 2011-2022 走看看