首页 > TAG信息列表 > nsmallest

heapq模块通过nlargest()和nsmallest()找到最大或最小的N个元素

问题 我们想在某个集合中找出最大或最小的N个元素 解决方案 heapq模块中有两个函数nlargest()和nsmallest() import heapq nums = [1,8,2,23,7,-4,18,23,42,37,2] print(heapq.nlargest(3,nums)) # [42,37,23] print(heapq.nsmallest(3,nums)) # [-4,1,2] 这两个函数都可以接收

heapq.nsmallest(n, iterable, key=None) 从 iterable 所定义的数据集中返回前 n 个最小元素组成的列表。 如果提供了 key 则其应指定一个单参数的函数,用于从 iterable 的每个元素中提取比较键 (例如 key=str.lower)。 等价于: sorted(iterable, key=key)[:n] nums = [-4,-2,1,4