def f(i,sm):
if i+1==len(a):
print sm+a[i]
return sm+a[i]
else:
f(i+1,sm+a[i])
a=[1,2,3,4,5]
print f(0,0)
15
None
--
http://mail.python.org/mailman/listinfo/python-list
n00m wrote:
def f(i,sm):
if i+1==len(a):
print sm+a[i]
return sm+a[i]
else:
f(i+1,sm+a[i])
a=[1,2,3,4,5]
print f(0,0)
15
None
You're not actually returning anything from
the recursive call.
TJG
--
else:
f(i+1,sm+a[i])
Maybe because you are ignoring the return value of the when you recurse...
try this
else:
return f(i+1, sm+a[i])
-Dave
--
http://mail.python.org/mailman/listinfo/python-list
n00m [EMAIL PROTECTED] writes:
def f(i,sm):
if i+1==len(a):
print sm+a[i]
return sm+a[i]
else:
f(i+1,sm+a[i])
a=[1,2,3,4,5]
print f(0,0)
15
None
Here's one to meditate on:
def foo():
... print foo
...
print foo()
foo