Python比较函数

时间:2010-09-24 13:35:45

标签: python functional-programming comparison

我有一些数据可以表示为值和比较函数(val, f),因此可以通过查看f(val, another)True来检查另一个值。这很简单。

其中有些只需要><==作为f,但我找不到使用它们的简洁方法;我最后写的是像ScorePoint(60, lambda a, b: a <= b)这样的东西。那很难看。

有没有办法可以做更像ScorePoint(60, <=)的事情?

2 个答案:

答案 0 :(得分:11)

operator模块是你的朋友:

import operator
ScorePoint(60, operator.le)

请参阅http://docs.python.org/library/operator.html

答案 1 :(得分:-4)

是:

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

或更简洁(但不太可读):

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