我想知道如何将字符串转换为Python定义的变量。
基本上我想这样做。
if value1 operator value2:
print True
我的运算符是一个字符串 '==' , '>', '<', '!='
这样就变成了
if value1 == value2:
print True
我试过operator = getattr(sys.modules[__name__], operator )
但它适用于类。
谢谢。
最佳答案
使用运算符(operator)模块:
import operator
def op(str, value1, value2):
lookup = {'==': operator.eq, '>': operator.gt,
'<': operator.lt, '!=': operator.ne}
if str in lookup:
return lookup[str](value1, value2)
return False
v1 = 1
v2 = 2
print op("!=", v1, v2)
# True
关于python - 将字符串转换为预定义的Python变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5561494/