填空什么来完成python程序(递归)

What to put in blanks to complete python program (recursion)

我已经研究了几个小时了,但我仍然不知道在这些空白处填什么。我对它的工作原理有一个想法,但我不知道如何应用它。求助!

基本上,我需要找出哪些空白才能让程序运行。这是一个递归问题,程序基本上只是获取列表中所有元素的总和。

enter image description here

无需填空:

def listsum(numlist):
  size=len(numlist)
  if(size==1): return numlist[0]
  else: 
    mid=size//2
    return listsum(numlist[:mid])+listsum(numlist[mid:])

numbers=[3, 5, 4, 1, 7, 2, 9, 8, 0, 6]

必须填空:

def listsum(numlist, size):
  if size==0:
    return 0
  elif size==1:
    return numlist[0]

  mid=size//2

  return listsum(numlist[:mid], mid)+listsum(numlist[mid:], size-mid)

numbers=[3, 5, 4, 1, 7, 2, 9, 8, 0, 6]
print(listsum(numbers, len(numbers)))

我非常质疑为什么要给学生布置这样的作业