仅使用python基本语法,编写python程序计算数学表达式
时间: 2024-10-11 15:15:18 浏览: 7
在Python中,我们可以使用内置的`eval()`函数或者第三方库如`ast`(Abstract Syntax Trees,抽象语法树)来解析并计算简单的数学表达式。以下是两种简单的方法:
1. **使用eval()函数**:
```python
def calculate_expression(expression):
try:
result = eval(expression)
return result
except Exception as e:
print(f"无法计算表达式:{e}")
# 示例
expression = "2 + 3 * 4"
print(calculate_expression(expression)) # 输出结果:14
```
这个方法直接将字符串转换为等价的Python表达式执行。
2. **使用ast模块**:
```python
import ast
def calculate_expression(expression):
tree = ast.parse(expression) # 将字符串转化为抽象语法树
expr_node = tree.body[0].value # 提取表达式的节点
result = eval(compile(expr_node, '<string>', 'eval'))
return result
expression = "2 + 3 * 4"
print(calculate_expression(expression)) # 输出结果:14
```
这里先创建了抽象语法树,然后通过编译和评估节点来计算表达式。