Y at-il une fonction qui me renvoie les N éléments les plus élevés de certaines listes?Python: élimine les éléments N maximum de certaines listes
I.e. si max(l)
renvoie l'élément le plus élevé, sth. comme max(l, count=10)
me renverrait une liste des 10 plus grands nombres (ou moins si l
est plus petit).
Ou ce qui serait un moyen facile et efficace d'obtenir ces derniers? (Excepté l'implémentation canonique évidente, aussi, pas de telles choses qui impliquent le tri de la liste entière d'abord parce que ce serait inefficace par rapport à la solution canonique.)
double possible de http://stackoverflow.com/q/1034846/64633 – Rod
heapq.nlargest est la manière pour aller chercher de très grosses listes, mais sur mon système, trié (l) [: count] est plus rapide jusqu'à ce que la liste atteigne ~ 25000 éléments. –
trié (l, inverse = Vrai) [0: N] –