2010-09-24 8 views
4

J'ai certaines données qui se prête à la représentation comme une valeur et une fonction de comparaison, (val, f), donc une autre valeur peut être vérifiée par rapport à elle en voyant si f(val, another) est True. C'est facile.Fonctions de comparaison Python

Certains d'entre eux ont besoin juste >, < ou == comme f, cependant, et je ne peux pas trouver un moyen propre de les utiliser; Je finis par écrire des choses comme ScorePoint(60, lambda a, b: a <= b). C'est moche.

Y at-il un moyen que je peux faire quelque chose de plus comme ScorePoint(60, <=)?

Répondre

-4

Oui:

LessEqual = lambda a, b: a <= b 
ScorePoint(60, LessEqual) 

ou plus concis (mais moins lisible):

LE = lambda a, b: a <= b 
ScorePoint(60, LE) 
+3

Je ne peux pas m'empêcher de remarquer que vous n'avez pas encore de badge «pression des pairs»;) – aaronasterling

+0

Je ne peux pas m'empêcher de remarquer que les gens continuent de voter sans raison valable. :-) –