0
我想用foo2
(非resourse)替換我的函數foo
,但foo2
工作不正確。 foo2
有什麼不對?用Python中的循環重寫遞歸函數
def foo(n, k=0,s=0):
if k < n:
for i in xrange(k==0,10):
foo(n, k+1, 10*s + i)
else:
print s,
def foo2(n):
s=0
for k in xrange(n):
st = s
for i in xrange(k==0, 10):
st = 10* st + i
print st
foo(3)
foo2(3)
更新
如果我更換10*s + i
與s + i**3
,我該如何改寫呢?
'foo'做了什麼? – 2013-11-03 13:58:15