遍历嵌套结构并返回每个结构中值的总和
创始人
2024-12-04 02:30:15
0

以下是一个示例代码,用于遍历嵌套结构并返回每个结构中值的总和。

def sum_nested_structure(nested_structure):
    total_sum = 0

    # 递归函数用于遍历嵌套结构
    def recursive_sum(structure):
        nonlocal total_sum

        if isinstance(structure, (int, float)):
            total_sum += structure
        elif isinstance(structure, (list, tuple)):
            for item in structure:
                recursive_sum(item)
        elif isinstance(structure, dict):
            for key, value in structure.items():
                recursive_sum(value)

    recursive_sum(nested_structure)
    return total_sum

# 示例嵌套结构
nested_structure = [
    1,
    2,
    [3, 4, [5, 6]],
    {'a': 7, 'b': [8, 9]}
]

total_sum = sum_nested_structure(nested_structure)
print(total_sum)  # 输出:45

在这个示例中,我们定义了一个名为sum_nested_structure的函数。该函数使用了一个递归函数recursive_sum来遍历嵌套结构并计算总和。

recursive_sum函数接受一个参数structure,表示当前要处理的结构。在每个递归步骤中,我们使用isinstance函数来判断当前结构的类型。

  • 如果structure是整数或浮点数,则将其值添加到total_sum中。
  • 如果structure是列表或元组,则逐个遍历其中的元素,并对每个元素递归调用recursive_sum函数。
  • 如果structure是字典,则遍历其中的键值对,并对每个值递归调用recursive_sum函数。

最后,我们在主函数sum_nested_structure中调用recursive_sum函数,并返回最终的总和total_sum

在示例中,我们使用了一个包含嵌套层级的列表作为输入,并打印最终的总和。输出结果是45,表示嵌套结构中所有值的总和为45。

相关内容

热门资讯

5分钟了解!老友互娱游戏软件,... 5分钟了解!老友互娱游戏软件,青龙大厅app的辅助器,wpk教程(有挂机密)1、上手简单,内置详细流...
6分钟了解!掌酷十三张外 挂,... 6分钟了解!掌酷十三张外 挂,青龙大厅辅助器,透明挂教程(有挂攻略);1、操作简单,无需注册,只需要...
四分钟了解!荔枝竞技游戏外 挂... 四分钟了解!荔枝竞技游戏外 挂,369山东麻将,AI教程(有挂普及)进入游戏-大厅左侧-新手福利-激...
1分钟了解!浙衢麻将有挂吗,聚... 1分钟了解!浙衢麻将有挂吗,聚闲麻将有没有挂,教你教程(有挂辅助挂)1、实时聚闲麻将有没有挂开挂更新...
两分钟了解!乐乐围棋入门怎么开... 两分钟了解!乐乐围棋入门怎么开挂,福建天天开心辅助工具,第三方教程(有挂插件);1、很好的工具软件,...
九分钟了解!微友麻将亲友圈有挂... 九分钟了解!微友麻将亲友圈有挂吗,闲逸碰胡辅助器,微扑克教程(有挂技巧);1、超多福利:超高返利,海...
2分钟了解!同城字牌有挂吗,乐... 2分钟了解!同城字牌有挂吗,乐享牛牛有没有挂,规律教程(有挂黑科技)1、进入游戏-大厅左侧-新手福利...
8分钟了解!情怀麻将挂真的,哈... 8分钟了解!情怀麻将挂真的,哈局十三张,攻略教程(有挂插件)1、玩家可以在情怀麻将挂真的软件透明挂俱...
一分钟了解!广西友乐麻将是正规... 一分钟了解!广西友乐麻将是正规平台吗有挂吗,闽游app辅助器,可靠教程(有挂揭秘);运广西友乐麻将是...
一分钟了解!逗娱碰胡,胡乐麻将... 一分钟了解!逗娱碰胡,胡乐麻将神器免费下,力荐教程(有挂解说);一、胡乐麻将神器免费下软件透明挂的定...