有没有一种方法可以将两个变量与作为字符串存储的比较器进行比较

问题描述 投票:0回答:3

我正在寻找一个可以执行以下操作的功能:

a = 3
b = 5
comparator = ">"
result = some_function(comparator, a, b)

比较器可以是任何比较器(>,> =,

我可以使用巨大的条件列表执行某些操作,但是某些功能可能已经存在(但找不到)

python comparator
3个回答
2
投票

将期望的字符串映射到其功能对应的字符串。


1
投票

您正在寻找operator module


0
投票
import operator

symbol_map = {
    '>': operator.__gt__,
    '>=': operator.__ge__,
    # and so on
}

def some_function(op, a, b):
    return symbol_map[op](a, b)
© www.soinside.com 2019 - 2024. All rights reserved.