J'étais en train de remanier un de mes vieux codes et je suis tombé sur ceci :
alist.sort(cmp_items)
def cmp_items(a, b):
if a.foo > b.foo:
return 1
elif a.foo == b.foo:
return 0
else:
return -1
Le code fonctionne (et je l'ai écrit il y a environ 3 ans !) mais je ne trouve pas cette chose documentée nulle part dans les docs Python et tout le monde utilise sorted()
pour mettre en œuvre un tri personnalisé. Quelqu'un peut-il expliquer pourquoi cela fonctionne ?