python读入文件转化为列表并计算每行的和
时间: 2024-04-30 09:19:13 浏览: 13
假设文件名为 `input.txt`,里面存放的是一些数字,每行一个数字,可以像下面这样读入文件,并计算每行数字的和:
```python
with open('input.txt', 'r') as f:
lines = f.readlines() # 读入文件中的所有行
numbers = [int(line.strip()) for line in lines] # 将每行的字符串转化为整型数字并存入列表
sums = [sum(numbers[:i+1]) for i in range(len(numbers))] # 计算每行数字的和并存入列表
print(sums) # 输出每行数字的和
```
解释一下代码:
- `with open('input.txt', 'r') as f:`:打开文件 `input.txt` 并创建一个文件对象 `f`。
- `lines = f.readlines()`:读入文件中的所有行,存入列表 `lines`。
- `numbers = [int(line.strip()) for line in lines]`:将每行的字符串转化为整型数字,并存入列表 `numbers`。注意,这里使用了列表推导式和字符串的 `strip()` 方法,去掉每行字符串末尾的换行符。
- `sums = [sum(numbers[:i+1]) for i in range(len(numbers))]`:计算每行数字的和,并存入列表 `sums`。这里使用了列表推导式和 Python 内置函数 `sum()`。
- `print(sums)`:输出每行数字的和。