使用递归查找嵌套列表的总和的Python程序
当需要使用递归技术查找嵌套列表的总和时,使用用户定义的方法,该方法将列表作为参数。
递归计算较大问题的小块的输出,并将这些块组合以给出更大问题的解决方案。
可以使用列表存储异构值(即任何数据类型的数据,如整数、浮点数、字符串等)。
更多Python相关文章,请阅读:Python 教程
示例
以下是相同问题的演示。
def recursion_sum(my_list):
my_total = 0
for elem in my_list:
if (type(elem) == type([])):
my_total = my_total + recursion_sum(elem)
else:
my_total = my_total + elem
return my_total
my_list = [[2,3], [7,9], [11,45], [78,98]]
print("列表元素为:")
print(my_list)
print("总和为:")
print(recursion_sum(my_list))
输出
列表元素为:
[[2, 3], [7, 9], [11, 45], [78, 98]]
总和为:
253
解释
- 定义了一个名为“recursion_sum”的方法,其参数为列表。
- 最初,将一个变量分配为0。
- 遍历列表中的元素,如果它们的类型匹配,则将列表中的元素相加,并再次调用该方法。
- 否则,仅将元素添加到变量中。
- 此变量作为输出显示在控制台上。
- 在函数外部,执行以下操作 −
- 定义嵌套列表,并在控制台上显示它。
- 通过将此列表作为参数调用方法。
- 在控制台上显示输出。