Python Language cmp_to_key


Exemple

Python a changé ses méthodes de tri pour accepter une fonction clé. Ces fonctions prennent une valeur et renvoient une clé utilisée pour trier les tableaux.

Les anciennes fonctions de comparaison utilisaient deux valeurs et renvoyaient -1, 0 ou +1 si le premier argument était petit, égal ou supérieur au second argument, respectivement. Ceci est incompatible avec la nouvelle fonction clé.

C'est là functools.cmp_to_key :

>>> import functools
>>> import locale
>>> sorted(["A", "S", "F", "D"], key=functools.cmp_to_key(locale.strcoll))
['A', 'D', 'F', 'S']

Exemple pris et adapté de la documentation Python Standard Library .