[Python] fonction de comparaison
Résolu/Fermé
Bonjour,
Voici une ligne d'un code python et je n'arrive pas a la comprendre :
son effet semble : etre de trier des propositions en fonction d'un critere
mais je ne trouve pas le critere ??
self.comp1=lambda tuple1, tuple2 : cmp((-tuple1[1], tuple1[0]) , (-tuple2[1], tuple2[0]))
Merci àd'avance ceux qui m'aideront ....
Voici une ligne d'un code python et je n'arrive pas a la comprendre :
son effet semble : etre de trier des propositions en fonction d'un critere
mais je ne trouve pas le critere ??
self.comp1=lambda tuple1, tuple2 : cmp((-tuple1[1], tuple1[0]) , (-tuple2[1], tuple2[0]))
Merci àd'avance ceux qui m'aideront ....
A voir également:
- [Python] fonction de comparaison
- Fonction si et - Guide
- Comparaison million milliard - Accueil - Technologies
- Citizen code python avis - Accueil - Outils
- Fonction moyenne excel - Guide
- Logiciel comparaison photo gratuit - Télécharger - Photo & Graphisme
2 réponses
kilian
Messages postés
8732
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
5 février 2025
1 526
27 nov. 2008 à 11:18
27 nov. 2008 à 11:18
Salut,
self.comp1=lambda tuple1, tuple2 : cmp((-tuple1[1], tuple1[0]) , (-tuple2[1], tuple2[0]))
Lambda permet de créer des fonctions à la volée.
En fait ici, s'il fallait retraduire avec une fonction statique, ça donnerait ça:
Ensuite, tu peux appeller self.comp1(arg1, arg2) quand tu veux.
self.comp1=lambda tuple1, tuple2 : cmp((-tuple1[1], tuple1[0]) , (-tuple2[1], tuple2[0]))
Lambda permet de créer des fonctions à la volée.
En fait ici, s'il fallait retraduire avec une fonction statique, ça donnerait ça:
def mafunc(tuple1, tuple2): return cmp((-tuple1[1], tuple1[0]) , (-tuple2[1], tuple2[0])) self.comp1 = mafunc
Ensuite, tu peux appeller self.comp1(arg1, arg2) quand tu veux.