文件-加减法 【问题描述】从文件jisuan.txt读入任意多行。jisuan.txt的每一行是一个 两个操作数参加的加法运算式或减法运算式。 程序分析每一行的运算式,完成运算,把运算结果写入jieguo.txt,一行一个结果。 【输入形式】文件jisuan.txt,每一行 是一个 由两个操作数参加的加法运算式或减法运算式。算式中不含空格,没有正负号。 【输出形式】文件jieguo.txt,一行一个结果。结果保留两位小数。 输入文件jisuan.txt内容样例: 121+20.5 15-2.3 6+0.8 输出文件jieguo.txt内容样例: 141.50 12.70 6.80 提示:字符串的格式化方法、\n r=5.1 s="{:.2f}\n".format(r)
时间: 2024-02-16 11:03:44 浏览: 119
以下是Python实现代码:
```python
with open('jisuan.txt', 'r') as f1, open('jieguo.txt', 'w') as f2:
for line in f1:
a, op, b = line.strip().split('+') if '+' in line else line.strip().split('-')
result = float(a) + float(b) if op == '+' else float(a) - float(b)
f2.write("{:.2f}\n".format(result))
```
解释:
1. 首先使用 `with open('jisuan.txt', 'r') as f1, open('jieguo.txt', 'w') as f2:` 打开输入文件 `jisuan.txt` 和输出文件 `jieguo.txt`。
2. 遍历输入文件的每一行,使用 `line.strip()` 去除行末的换行符并将其赋值给变量 `line`。
3. 对于每一行的运算式,使用 `split()` 方法将其分割成操作数和运算符,赋值给变量 `a`、`op` 和 `b`。
4. 根据运算符 `op`,使用条件语句进行加减运算并将结果赋值给变量 `result`。
5. 使用字符串的格式化方法 `"{:.2f}\n".format(result)` 将结果转换成字符串并保留两位小数,并写入输出文件 `jieguo.txt` 中。
6. 循环结束后,自动关闭输入文件和输出文件。
阅读全文