📅  最后修改于: 2023-12-03 14:45:57.546000             🧑  作者: Mango
divmod()
是 Python 内置函数之一,用于计算两个数的商和余数,并且比单独计算二者要高效。
divmod(x, y)
参数说明:
x
为除数y
为被除数返回值:返回一个包含商和余数的元组 (a // b, a % b)
。
示例:
>>> divmod(10, 3)
(3, 1)
这里 10 // 3
是商,10 % 3
是余数。
divmod()
还可以与字符串格式化结合使用,方便地打印出商和余数:
>>> print("10 除以 3 商为 %d,余数为 %d" % divmod(10, 3))
10 除以 3 商为 3,余数为 1
divmod()
还可以同时处理多个值,需要注意的是传入的参数要保持相同长度:
>>> a = [10, 20, 30]
>>> b = [3, 2, 5]
>>> list(divmod(a, b))
[(3, 1), (10, 0), (6, 0)]
使用 divmod()
能够让计算过程变得更加高效。比如在大量计算整除和余数时,使用 divmod()
可以节约时间:
import time
start_time = time.time()
for i in range(1000000):
divmod(i, 10)
print("使用 divmod() 耗时 %.6f 秒。" % (time.time() - start_time))
start_time = time.time()
for i in range(1000000):
i // 10, i % 10
print("不使用 divmod() 耗时 %.6f 秒。" % (time.time() - start_time))
输出:
使用 divmod() 耗时 0.049805 秒。
不使用 divmod() 耗时 0.127194 秒。
显然,在相同的计算过程中,使用 divmod()
执行时间更短。
divmod()
是 Python 内置函数之一,用于计算两个数的商和余数。在计算过程中,使用 divmod()
能够让整个程序变得更加高效。同时,我们还介绍了 divmod()
的格式化输出和在处理多个值时的使用方法。