使用堆排序:
import heapq
nums = [1000,-1,22,3,55,6666,1,2,3,4];
datas = [{'name':'1','age':1},{'name':'2','age':2},{'name':'3','age':3}]
print( "largest:",heapq.nlargest(2,nums))
print("smallest:" , heapq.nsmallest(5,nums))
print('older:' , heapq.nlargest(2,datas,lambda d:d['age']))