python做计算器并把历史计算记录记下来
时间: 2024-11-10 18:27:12 浏览: 9
Python可以创建一个简单的命令行计算器,并将历史计算记录保存在一个列表或者文件中。这里是一个基本的实现思路:
首先,我们可以使用`input()`函数接收用户的输入作为算术表达式,并利用Python内置的`eval()`函数来计算结果。但请注意,由于`eval()`的安全性问题,它并不推荐用于生产环境,因为它会执行任何有效的Python代码。
```python
# 定义一个空的历史记录列表
history = []
def calculator():
while True:
expression = input("请输入算术表达式 (q退出): ")
if expression.lower() == 'q':
break
try:
result = eval(expression)
print(f"结果: {result}")
# 将历史记录添加到列表中
history.append((expression, result))
except Exception as e:
print(f"计算错误: {e}")
calculator()
```
如果你想要更安全的方式保存历史记录,可以考虑使用`json`模块来序列化和反序列化数据,或者直接将记录写入文本文件。以下是将结果追加到文件的例子:
```python
import json
def save_to_file(history):
with open('calculator_history.txt', 'a') as f:
for expr, result in history:
f.write(f"{expr}: {result}\n")
save_to_file(history)
```
每次用户计算完后,你可以调用`save_to_file(history)`将当前的历史记录保存到文件中。
阅读全文