所以,例如,我有
a=2
b= +
c= 3
如何使用这些变量来评估2 + 3?
答案 0 :(得分:1)
您无法将+
指定给变量。你可以做的是存储它的“字符串表示”:
a = 2
b = '+'
c = 3
要评估操作,您可以使用eval()
:
>>> print eval(str(a) + b + str(c))
5
将评估作为字符串传递的表达式(这就是为什么我们使用第一个str(a)
来获取整个字符串)
注意:
eval
,请使用它。eval
时必须非常小心,因为您可能会得到意想不到的结果。exec()
的函数,用于执行语句。答案 1 :(得分:1)
operator
模块包含实现内置运算符的函数。您可以构建一个字典,将运算符的特定符号映射到相应的函数,然后将其用作查找表来评估您的表达式。
import operator
>>> op_dict = { '+': operator.add, '-': operator.sub }
>>> a = 2
>>> b = '+'
>>> c = 3
>>> op_dict[b](a, c)
5