Python表达式求值代码
时间: 2023-11-05 09:01:33 浏览: 34
以下是一个简单的Python表达式求值代码示例:
```python
def evaluate_expression(expression):
"""Evaluate a simple arithmetic expression."""
stack = []
for token in expression.split():
if token.isdigit():
stack.append(int(token))
elif token in ["+", "-", "*", "/"]:
operand2 = stack.pop()
operand1 = stack.pop()
if token == "+":
result = operand1 + operand2
elif token == "-":
result = operand1 - operand2
elif token == "*":
result = operand1 * operand2
elif token == "/":
result = operand1 / operand2
stack.append(result)
return stack.pop()
```
该函数接受一个简单的算术表达式作为字符串参数,例如 "2 + 3 * 4 - 5". 它使用一个栈来跟踪操作数和操作符。在循环中,它将每个令牌拆分为数字和运算符,并根据需要将它们推入栈中。当它遇到运算符时,它从堆栈中弹出两个数字,执行指定的操作,并将结果推回堆栈中。最终,只有一个数字剩余在堆栈中,它被返回为表达式的结果。