You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Lambda函数计算嵌套列表中所有子列表的长度之和?

用Lambda函数计算嵌套列表子列表长度之和

嘿,刚接触Lambda函数的话,这个需求其实很好实现,结合Python的内置函数就能轻松搞定。咱们直接来看针对你示例的解法:

核心实现思路

我们可以用map()函数把Lambda匿名函数应用到嵌套列表的每一个子列表上,Lambda负责返回每个子列表的长度,最后用sum()把这些长度值加起来就行。

代码示例

def get_total_length(nested_list):
    # 用map遍历每个子列表,Lambda返回子列表长度,sum求和
    return sum(map(lambda sublist: len(sublist), nested_list))

# 测试你的示例
result = get_total_length([[1, 2, 3], [4, 5], [6, 7, 8, 9, 10]])
print(result)  # 输出:10

逐行解释

  • lambda sublist: len(sublist):这是一个匿名函数,接收一个子列表参数sublist,直接返回它的长度。
  • map(..., nested_list):map()会把上面的Lambda函数依次作用到nested_list的每一个元素(也就是每个子列表)上,生成一个包含所有子列表长度的迭代器(这里就是[3, 2, 5])。
  • sum(...):最后把迭代器里的所有数值相加,得到总长度10。

扩展:处理非列表元素的情况

如果你的嵌套列表里可能混有非列表类型的元素(比如单个数字),可以给Lambda加个判断,避免len()报错:

def get_total_length_safe(nested_list):
    return sum(map(lambda item: len(item) if isinstance(item, list) else 0, nested_list))

# 测试混合元素的情况
print(get_total_length_safe([[1,2], 3, [4,5,6]]))  # 输出:5

这样就灵活多啦~

内容的提问来源于stack exchange,提问作者trougc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:12:01