功能: divmod()函數把除數和余數運算結果結合起來,返回一個包含商和余數的元組(a//b, a%b)
語法:divmod(a, b)
舉例1.計算從參數N開始,向下遞減的每一個數字和參數A的除數及余數的結果值。代碼如下:
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()函數並傳入參數數據,代碼如下:
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. 模擬實現數據分頁計算方法。代碼如下:
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()函數並傳遞當前頁碼和每頁總條數參數,返回數據結果以及總的頁碼數,代碼如下:
result = getSegment(2, 5)
print(result[0])
print(result[1])
輸出結果:
['f', 'g', 'h', 'i', 'j']
6