根据二维元组的第二个索引求其最小值

2024-05-03 02:30:50 发布

您现在位置:Python中文网/ 问答频道 /正文

在python中,我需要根据元组的第二个索引找到它们的k-最小值, 例如,我有一个元组列表,其中包含一些点到定点的距离,比如:[('p1',12.5),('p2',3),('p4',1),('p5',16),('p6',15),...](from fixed point p0),我想根据距离找到k个最小值。

我的意思是类似这样的代码,这里解释:Find the k smallest values of a numpy array

非常感谢您的解决方案


Tags: 代码from距离列表find定点pointfixed
1条回答
网友
1楼 · 发布于 2024-05-03 02:30:50

可以使用heapq.nsmallest,并指定元组中的第二个元素作为比较键:

from heapq import nsmallest 

lst = [('p1',12.5),('p2',3),('p4',1),('p5',16),('p6',15)]
nsmallest(3, lst, key=lambda x: x[1])
# [('p4', 1), ('p2', 3), ('p1', 12.5)]

相关问题 更多 >