R
rickhg12hs
Would a kind soul explain something basic to a python noob?
Why doesn't this function always return a list?
def recur_trace(x,y):
print x,y
if not x:
return y
recur_trace(x[1:], y + [x[0]])
Here are a couple sample runs.
[1,2,3]
So that worked okay and returned the list [1,2,3].
[8] [1,2,3,9]
[] [1,2,3,9,8]
None
No list is returned here. Why?
[Using Python 2.6.2]
Why doesn't this function always return a list?
def recur_trace(x,y):
print x,y
if not x:
return y
recur_trace(x[1:], y + [x[0]])
Here are a couple sample runs.
[] [1,2,3]print(recur_trace([],[1,2,3]))
[1,2,3]
So that worked okay and returned the list [1,2,3].
[9,8] [1,2,3]print(recur_trace([9,8],[1,2,3]))
[8] [1,2,3,9]
[] [1,2,3,9,8]
None
No list is returned here. Why?
[Using Python 2.6.2]