写出Python代码。1.逐行遍历文本内容,当第一次发现iter开头的行的时候,将从iter这行到最后全部保存。 2 .新文件删除所有重复行 3·分列,根据四个空格 4.插入标题 5 画图
时间: 2023-06-24 18:08:06 浏览: 121
Python 迭代,for...in遍历,迭代原理与应用示例
这里是一个可能的Python代码示例:
```python
import matplotlib.pyplot as plt
# 1. 逐行遍历文本内容,保存iter开头的行到最后
with open('input.txt', 'r') as input_file:
iter_started = False
iter_lines = []
for line in input_file:
if line.startswith('iter'):
iter_started = True
if iter_started:
iter_lines.append(line)
# 2. 新文件删除所有重复行
unique_lines = set(iter_lines)
with open('unique.txt', 'w') as output_file:
output_file.writelines(unique_lines)
# 3. 分列,根据四个空格
data = []
for line in unique_lines:
columns = line.split(' ')
data.append(columns)
# 4. 插入标题
headers = ['Iteration', 'Loss', 'Accuracy']
data.insert(0, headers)
# 5. 画图
iterations = [int(row[0]) for row in data[1:]]
losses = [float(row[1]) for row in data[1:]]
accuracies = [float(row[2]) for row in data[1:]]
plt.plot(iterations, losses)
plt.xlabel('Iteration')
plt.ylabel('Loss')
plt.title('Loss over iterations')
plt.show()
plt.plot(iterations, accuracies)
plt.xlabel('Iteration')
plt.ylabel('Accuracy')
plt.title('Accuracy over iterations')
plt.show()
```
需要注意的是,这个代码示例假设每一行的分隔符是四个空格,而且数据格式符合预期,否则需要进行额外的处理。另外,画图部分使用了matplotlib库,需要先安装。
阅读全文