我正在尝试编写一个函数,该函数接收两个操作数和一个运算符。有没有一种方法可以将字符串强制转换为运算符?
下面的代码不起作用,但是应该说明我正在尝试做的事情。
def foo(operand1,operand2,operator):
return operand1 operator operand2
print(foo(1,2,"+"))
print(foo(1,2,"*"))
我正在尝试编写RPN计算器。我将有一个字符串,例如“ 3 3 + 4 * 8-”。取出前两个操作数和运算符很简单,但是我不确定如何处理运算符。在红宝石中,将字符串转换为运算符非常简单。我可以做类似
的操作if operand == "*":
return operator1 * operator2
我知道这会起作用。没有比较就可以做到吗?