在python中循环的初始值永远从0开始,不管前面如何赋值,如下代码:
digits[-1] = digits[-1]+1 #i = len(digits)-1 i = 1 for i in range(len(digits)): if digits[i]==10: if i == 0: digits[i] = 0 D = [1] D.extend(digits) print(D) return D else: digits[i] = 0 digits[i-1] = digits[i-1] + 1 i -= 1 print(digits) return digits
虽然起初我们给 i 赋值 1,但是开始下面循环的时候,i 初值依然为0。