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

如何用enumerate获取嵌套列表中第二子元素最小项的索引

解决方法:结合enumerate与min获取索引及目标最小元素

嗨,这个小问题我之前也踩过坑!你用enumerate(nlist)之后,迭代出来的每个元素是(索引, 子列表)这样的元组,之前的key=lambda x: x[1]其实是在直接比较整个子列表,而不是子列表里的第二个元素,这就是为啥没得到预期结果的原因。

正确的写法应该把key函数的指向调整到子列表的第二个元素上,也就是用x[1][1]作为比较依据:

nlist = [ [10, 6], [12,3], [13,1] ]
result = min(enumerate(nlist), key=lambda x: x[1][1])
print(result)  # 输出:(2, [13, 1])

简单解释下逻辑:

  • enumerate(nlist)会生成(0, [10,6])、(1, [12,3])、(2, [13,1])这一组元组
  • lambda x: x[1][1]的作用是:取每个元组里的第二个元素(也就是原列表中的子列表),再取这个子列表的第二个值,用这个值作为min函数的排序/比较标准

这样就能精准得到你想要的(索引, 最小元素)格式结果啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 03:27:11