我正在寻找一个可以执行以下操作的功能:
a = 3
b = 5
comparator = ">"
result = some_function(comparator, a, b)
比较器可以是任何比较器(>,> =,
我可以使用巨大的条件列表执行某些操作,但是某些功能可能已经存在(但找不到)
将期望的字符串映射到其功能对应的字符串。
您正在寻找operator
module:
import operator
symbol_map = {
'>': operator.__gt__,
'>=': operator.__ge__,
# and so on
}
def some_function(op, a, b):
return symbol_map[op](a, b)