2301_76777851 2023-04-09 23:15 采纳率: 100%
浏览 147
已结题

计算嵌套列表某一层次的元素数量

输入一个嵌套列表,再输入层数,求该层的元素个数。如果求第二层次的元素个数,但是第二层次还有第三层次嵌套,则嵌套列表算一个元素。

  • 写回答

5条回答 默认 最新

  • 语言-逆行者 2023-04-09 23:24
    关注

    基于new Bing的回答:

    def count_elements_in_layer(nested_list, layer):
        if layer == 1:
            return len(nested_list)
        count = 0
        for item in nested_list:
            if isinstance(item, list):
                count += count_elements_in_layer(item, layer-1)
            else:
                count += 1
        return count
    
    
    

    其中,nested_list 是输入的嵌套列表,layer 是要求的层数。如果 layer 等于 1,直接返回列表长度。否则,遍历列表中的每个元素,如果元素是一个列表,则递归调用该函数继续遍历下一层;否则,将计数器加 1。最后返回计数器的值即可。

    注意,题目要求如果目标层次还有更深层次的嵌套,则嵌套列表算作一个元素。因此,在遍历过程中,当遇到一个列表时,不仅需要递归调用该函数,还需要将计数器加 1,表示该列表本身也是一个元素。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 4月18日
  • 已采纳回答 4月10日
  • 创建了问题 4月9日

悬赏问题

  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
  • ¥15 前端echarts坐标轴问题
  • ¥15 ad5933的I2C