Python内置函数之数学函数---divmod()

2022-06-21 18:28:01 浏览数 (1)

功能: 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

0 人点赞