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

Python统计嵌套列表中非空列表数量的问题求助

解决嵌套列表中非空列表的统计问题

嘿,你的问题出在判断条件上啦!你写的x is not ''是在检查每个元素是不是空字符串,但combine里的元素都是列表——哪怕是空列表b,它也不是空字符串'',所以三个元素都满足这个条件,结果自然是3,和预期的2不符。

要统计非空列表的数量,我们需要判断每个列表本身是否为空,这里有几种简洁的写法:

方法一:利用列表的布尔特性

空列表在布尔判断里会被视为False,非空列表则是True,直接用这个特性统计:

count = sum(1 for x in combine if x)

或者更简洁的版本(因为True等价于1,False等价于0):

count = sum(bool(x) for x in combine)
# 甚至可以更短,sum会自动把布尔值转成整数
count = sum(x for x in combine)

方法二:明确判断列表是否为空

如果你想写得更直观,也可以直接判断列表不等于空列表:

count = sum(1 for x in combine if x != [])

用这些方法运行你的示例,得到的count就会是2啦,完全符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:34:03