递归

def refunc(n):
    i=1
    if n>1:               #递归的结束判断
        i=n
        n=n*refunc(n-1)    #递推
    print"%d!=" %i,n
    return n               #回归
refunc(5)


print
print'使用reduce计算阶乘'

print"5!=",reduce(lambda x,y:x*y,range(1,6))


===================== RESTART: C:/Python27/recursior.py =====================
1!= 1
2!= 2
3!= 6
4!= 24
5!= 120


使用reduce计算阶乘
5!= 120
>>> 

你可能感兴趣的:(Python)