功能: divmod()函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a//b, a%b)
语法:divmod(a, b)
举例1.计算从参数N开始,向下递减的每一个数字和参数A的除数及余数的结果值。代码如下:
代码语言:javascript复制def getDivmod(A, N):
while N >= 0:
sn = str(N)
sa = str(A)
result = ['divmod({0}, {1}):'.format(sn, sa), str(divmod(N, A))]
print(''.join(result))
N = N -1
调用getDivmod()函数并传入参数数据,代码如下:
代码语言:javascript复制getDivmod(3, 10)
运行结果如下:
divmod(10, 3):(3, 1)
divmod(9, 3):(3, 0)
divmod(8, 3):(2, 2)
divmod(7, 3):(2, 1)
divmod(6, 3):(2, 0)
divmod(5, 3):(1, 2)
divmod(4, 3):(1, 1)
divmod(3, 3):(1, 0)
divmod(2, 3):(0, 2)
divmod(1, 3):(0, 1)
divmod(0, 3):(0, 0)
2. 模拟实现数据分页计算方法。代码如下:
代码语言:javascript复制def getSegment(curIndex, getSize):
abc = ['a','b', 'c', 'd', 'e', 'f', 'g','h','i', 'j', 'k', 'l', 'm','n','o', 'p', 'q', 'r', 's', 't','u','v', 'w', 'x', 'y', 'z']
startGet = (curIndex-1)*getSize
getData = abc[startGet:curIndex*getSize]
totalIndexTuple = divmod(len(abc), getSize)
totalIndex = totalIndexTuple[0] (1 if totalIndexTuple[1] > 0 else 0)
return (getData, totalIndex)
调用getSegment()函数并传递当前页码和每页总条数参数,返回数据结果以及总的页码数,代码如下:
代码语言:javascript复制result = getSegment(2, 5)
print(result[0])
print(result[1])
输出结果:
['f', 'g', 'h', 'i', 'j']
6