我需要编写两个函数来求嵌套数字列表的和,一个使用迭代,另一个使用递归.
我已经编写了两个函数,它们成功地找到了非嵌套数字列表的和,但我不确定如何让它们遍历嵌套列表.
这就是我到目前为止所拥有的:
def iterative_sum(ls:list):
max = len(ls)
i = 0
num_sum = 0
while i < max:
num_sum += ls[i]
i += 1
return num_sum
def recursive_sum(ls:list):
if len(ls)==0:
return 0
else:
return ls[0] + recursive_sum(ls[1:])
num_list = [1, 5, 4, 3, 2, 10, 5]
print("Iterative sum:", iterative_sum(num_list))
print ("Recursive sum:", recursive_sum(num_list))
它对非嵌套列表非常有用,但如果我的列表也是这样的话,我需要它才能工作:
num_list = [1, 2, [3, 4], [5, [[6, 7], 8]], 9]
个