python3,使用枚举保持索引的嵌套列表中的最小值
Posted
技术标签:
【中文标题】python3,使用枚举保持索引的嵌套列表中的最小值【英文标题】:python3, minimum in nested list keeping index using enumerate 【发布时间】:2018-06-23 04:43:14 【问题描述】:nlist = [ [10, 6], [12,3], [13,1] ]
我正在尝试查找具有最小第二个子元素的列表元素,即我希望返回 [13, 1] - 我可以通过以下方式实现:
min(nlist, key = lambda x: x[1])
如果我还想通过使用 enumerate 函数获取结果的 nlist 中的索引,我无法弄清楚重写 lambda 以打开 enumerate 对象。这当然行不通:
min(enumerate(nlist), key = lambda x: x[1])
预期的结果应该类似于 (index, min_element):
(2, [13, 1])
也许这个Finding the index of an item given a list containing it in Python 将解决方案嵌入某处(不是嵌套列表)。
【问题讨论】:
【参考方案1】:enumerate
返回一个包含索引和元素的元组。您可以对其应用下标运算符(即[1]
)来检索元素并在您的lambda中使用它:
min(enumerate(nlist), key = lambda x: x[1][1])
【讨论】:
啊 - 我显然是一个下标!以上是关于python3,使用枚举保持索引的嵌套列表中的最小值的主要内容,如果未能解决你的问题,请参考以下文章