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

Python如何按条件获取嵌套列表中的首个符合条件子列表

Python查找嵌套列表中首个符合条件的子列表

给定嵌套列表:

[['ac',7,0],['ac',6,1],['ac',5,1],['bc',4,1],['bc',3,0],['ac',2,0]]

需要找到第三个元素等于1的首个子列表,这里给你两种简单易懂的实现方式:

方式一:for循环遍历(直观易理解)

用循环逐个检查每个子列表,找到符合条件的就停止遍历:

# 注意:把ac、bc改成字符串避免未定义变量报错
nested_list = [['ac',7,0],['ac',6,1],['ac',5,1],['bc',4,1],['bc',3,0],['ac',2,0]]

target = None
for sublist in nested_list:
    # Python列表索引从0开始,第三个元素对应索引2
    if sublist[2] == 1:
        target = sublist
        break  # 找到第一个符合条件的就终止循环

print(target)  # 输出结果:['ac', 6, 1]

方式二:生成器+next()函数(简洁写法)

利用生成器表达式筛选符合条件的子列表,再用next()取第一个结果:

nested_list = [['ac',7,0],['ac',6,1],['ac',5,1],['bc',4,1],['bc',3,0],['ac',2,0]]

# next()的第二个参数是找不到符合条件元素时的默认值,这里设为None
target = next((s for s in nested_list if s[2] == 1), None)

print(target)  # 输出结果:['ac', 6, 1]

注意事项

原列表里的ac、bc如果直接写会被Python当作变量,需要提前定义或者改成字符串(比如'ac'),否则会报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 16:38:24