3
回答
还是之前关于f(x)=xf(x-1)的问题
终于搞明白,存储TCO原来是这样算的>>>   

还是之前关于f(x)=xf(x-1)的问题,

1、为啥直接写成如下不行(不带==0的if)?

def f(x):
        return x * f(x - 1) 
print f(5)

2、当x==0的时候为啥return 1和return 2不同的值会导致后面计算f(6)的值不一样?难道x==0的时候f(x)的值会导致f(x)的表达式不再是x!阶乘?

def f(x): 
    if x == 0: 
        return 1 
    else: 
        return x * f(x - 1) 
print f(6)

举报
aaronong
发帖于5年前 3回/215阅
顶部