Python 内建函数列表 > Python 的内置函数 divmod
Python 的内置函数 divmod() 是一个实用的数学运算函数,它能够同时返回两个数值相除的商和余数。这个函数接受两个非复数数字作为参数,返回一个包含两个元素的元组,第一个元素是两数相除的商,第二个元素是余数。
def divmod(x, y):
'''
返回整数除法时的商和余数
:param x: 被除数
:param y: 除数
:return: 商和余数的元组
'''
典型应用场景包括:
- 时间转换 - 将总秒数转换为小时/分钟/秒格式
- 进制转换 - 在数字进制转换时同时获取商和余数
- 分页计算 - 计算总页数和最后一页的项目数
使用示例-时间转换: 运行示例
total_seconds = 3670
minutes, seconds = divmod(total_seconds, 60)
hours, minutes = divmod(minutes, 60)
print(f"{hours}小时{minutes}分钟{seconds}秒") # 输出:1小时1分钟10秒
与单独使用//和%运算符相比,divmod()的优势在于只需一次计算就能同时获得两个结果,在某些场景下可以提高运算效率。