Python 3 内置函数 divmod( )
Python 3.8.5
语法格式:
divmod(a, b)
描述:
- 将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数。
- 对于混合操作数类型,适用双目算术运算符的规则。
- 对于整数,结果和 (a // b, a % b) 一致。
- 对于浮点数,结果是 (q, a % b) ,q 通常是 math.floor(a / b) 但可能会比 1 小。
- 在任何情况下, q * b + a % b 和 a 基本相等;如果 a % b 非零,它的符号和 b 一样,并且 0 <= abs(a % b) < abs(b) 。
- 在 python 3.x 版本该函数不支持复数。
参数说明:
- a —— 数字,非复数。
- b —— 数字,非复数。
返回值:
- 如果参数 a 与 参数 b 都是整数,函数返回的结果相当于 (a // b, a % b)。
- 如果其中一个参数为浮点数时,函数返回的结果相当于 (q, a % b),q 通常是 math.floor(a / b),但也有可能是 1 ,比小,不过 q * b + a % b 的值会非常接近 a。
- 如果 a % b 的求余结果不为 0 ,则余数的正负符号跟参数 b 是一样的,若 b 是正数,余数为正数,若 b 为负数,余数也为负数,并且 0 <= abs(a % b) < abs(b)。
示例:
>>> divmod(7, 2)
(3, 1)
>>> divmod(8, 2)
(4, 0)
>>> divmod(8, -2)
(-4, 0)
>>> divmod(3, 1.3)
(2.0, 0.3999999999999999)