美文网首页
Python3除法之真除法、截断除法和下取整对比

Python3除法之真除法、截断除法和下取整对比

作者: 若数 | 来源:发表于2019-05-22 21:32 被阅读0次
    163.jpg

    概述

    在Python3中,数学运算中的除法被分为两种,分别是“真除法”,即无论任何类型相除的结果都会保留小数点,和我们实际的数学运算结果一致,而“截断除法”,则是无论任何类型相除的结果都会省略结果的小数部分,剩下最小的能整除的整数部分。
    以下是两种除法的基本形式:

    # 真除法
    X / Y
    # 截断除法
    X // Y
    

    真除法

    X = 8
    Y = 2
    Z = 3
    
    print(X / Y)
    print(X / Z)
    

    示例结果:

    4.0
    2.6666666666666665
    

    真除法的结果表明不论操作数的类型其相除结果都返回一个浮点结果。

    截断除法

    X = 8
    Y = 2
    Z = 3
    S = -8
    
    print(X // Y)
    print(X // Z)
    print(S // Y)
    print(S // Z)
    

    示例结果:

    4
    2
    -4
    -3
    

    从示例中我们可以看到,截断除法并不是真的直接去掉小数点后面的数字,而是类似模块math中的floor方法,即向下取整,且负值的取整方式也是这样的。

    import math
    
    math.floor(2.0)
    math.floor(2.6666666666666665)
    math.floor(-2.0)
    math.floor(-2.6666666666666665)
    

    示例结果:

    2
    2
    -2
    -3
    

    同样的模块math中的ceil方法可以实现浮点数的上取整。

    import math
    
    print(math.ceil(2.0))
    print(math.ceil(2.6666666666666665))
    print(math.ceil(-2.0))
    print(math.ceil(-2.6666666666666665))
    
    2
    3
    -2
    -2
    

    相关文章

      网友评论

          本文标题:Python3除法之真除法、截断除法和下取整对比

          本文链接:https://www.haomeiwen.com/subject/waepzqtx.html