评估条件时是否可以将运算符包含在变量中。像这样:
>>> one = 1
>>> two = 2
>>> lessthan = '<'
>>> if one lessthan two: print 'yes'
有没有办法在表达式期间返回变量?我也尝试通过函数返回它。
def operator(op):
return op
if one operator(lessthan) two: print 'yes'
非常感谢,
评估条件时是否可以将运算符包含在变量中。像这样:
>>> one = 1
>>> two = 2
>>> lessthan = '<'
>>> if one lessthan two: print 'yes'
有没有办法在表达式期间返回变量?我也尝试通过函数返回它。
def operator(op):
return op
if one operator(lessthan) two: print 'yes'
非常感谢,
你可以使用operator
:
import operator
lessthan = operator.lt
one = 1
two = 2
if lessthan(one, two):
print 'yes'
您还可以在字符串和操作之间进行映射:
operators = {
'<': operator.lt,
'>': operator.gt,
'>=': operator.ge,
'<=': operator.le,
}
然后调用函数:
>>> operators['<'](123, 456)
True