对于一组数让我们找到最大最小元素是不陌生的问题
>>> a = [1,5,3,9,4,6,2]
>>> max(a)
9
>>> min(a)
1
但是如何能够找到多个最大值呢,如果是有序表,可以通过切片的方法找到,当然如果是无序表,也可以先排序,在切片。在python中有模块可以直接解决这个问题:heapq模块
heapq模块中有两个函数:nlargest与nsmallest可以完美地解决这个问题
我们试着找一找前三个最大的数与后两个最小的数:
>>> import heapq
>>> heapq.nlargest(3,a)
[9