python - 从坐标元组列表中选择最小值

标签 python list select tuples min

我正在尝试迭代这样的元组列表:

[(0, 0.0083553666846612491), (1, 0.0054999681509501821)]

找到元组右侧的最小值,然后将左侧的值保存到变量中。

解决这个问题的最佳方法是什么?

最佳答案

您可以使用 min()key 参数函数查找第二个值最小的元组:

>>> l = [(0, 0.0083553666846612491), (1, 0.0054999681509501821)]
>>> smallest = min(l, key=lambda x: x[1])[0]
>>> smallest
1

这里使用 lambda 表达式来选择每个元组的第二项,并且 min 在比较中使用该值。 min() 返回完整元组,因此您可以使用 [0] 提取第一项。

您还可以使用operator.itemgetter :

>>> from operator import itemgetter
>>> smallest = min(l, key=itemgetter(1))[0]
>>> smallest
1

关于python - 从坐标元组列表中选择最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40456040/

相关文章:

sql - 根据列的 N 值复制行的 Select 语句

python - linux写的编译shell文件是什么

python - 平滑而不用零填充缺失值

python - scrapy:了解项目和请求在回调之间如何工作

python - 如果元素出现在字符串列表中,则从元组列表中获取元组

javascript - 按下拉所选项目过滤的数据表

MySQL 多个 SUM 返回相同的值

python - Numpy - 使用索引数组索引数组的最后一个维度

java - 难以从字符串列表中播放真实值

C# 等制表符间距