python读取一个txt文件,三列分别为年月数据(有好几年数据),求第三列每一年数据平均值
时间: 2024-03-26 16:39:46 浏览: 19
好的,可以使用Python内置的文件操作函数和列表操作函数来实现。下面是一个示例代码:
```python
with open('file.txt', 'r') as f:
data = f.readlines() # 读取所有行数据到列表中
year_data = {} # 存储每年的第三列数据
for line in data:
year, month, value = line.strip().split() # 去除每行末尾的换行符并按空格分割
year = int(year) # 将年份转换为整数
if year not in year_data:
year_data[year] = [] # 如果该年份不存在,则创建一个新的列表
year_data[year].append(float(value)) # 将第三列数据转换为浮点数并添加到该年份对应的列表中
for year, values in year_data.items():
avg_value = sum(values) / len(values) # 计算平均值
print(f'The average value of the third column in {year} is {avg_value:.2f}.') # 输出结果,保留两位小数
```
需要将上述代码中的`file.txt`替换为你要读取的文件名。