📜  python .nlargest - Python (1)

📅  最后修改于: 2023-12-03 15:33:57.673000             🧑  作者: Mango

介绍Python中的nlargest函数

在Python的标准库中,有一个叫做nlargest的函数,用来返回一个列表中最大的N个数字。

语法
heapq.nlargest(n, iterable[, key])

参数说明:

  • n:需要返回的最大的N个数字,必须是整数。
  • iterable:一个可迭代的对象,可以是列表、元组、集合、字典等等。
  • key:一个可选的函数,用来指定如果可迭代对象中的元素是一个对象,那么如何进行比较以确定它是否是“最大的”。
返回值

该函数返回由元素组成的列表,列表中的元素是输入可迭代对象中最大的N个数字。

例子
import heapq

nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(heapq.nlargest(3, nums))  # 输出 [10, 9, 8]

fruits = [
    {'name': 'apple', 'count': 10},
    {'name': 'banana', 'count': 5},
    {'name': 'pear', 'count': 20},
    {'name': 'orange', 'count': 8}
]

print(heapq.nlargest(2, fruits, key=lambda fruit: fruit['count'])) # 输出 [{'name': 'pear', 'count': 20}, {'name': 'apple', 'count': 10}]
使用场景

该函数通常用于数据分析、机器学习等领域,例如在一个庞大的数据集中,需要找到某些指标最高的数据。此时,可以使用nlargest函数轻松地获得最高指标的前N个数据。