对列表中的元素求和的递归函数返回无
def recsum(l,sum=0):
sum += l[0]
l = l[1:]
if l:recsum(l,sum)
else: return sum
val = [2,3,4,5]
print(recsum(val))
输出
没有
答案 0 :(得分:1)
从内部调用函数时,您需要返回该函数:
def recsum(l,sum=0):
sum += l[0]
l = l[1:]
if l:
return recsum(l,sum)
else:
return sum
答案 1 :(得分:0)
已解决:
当l
非空时,函数返回None
因此,只需添加return语句即可解决问题
def recsum(l,sum=0):
sum += l[0]
l = l[1:]
if l:return recsum(l,sum)
else: return sum
val = [2,3,4,6]
print(recsum(val))
输出:15