写一段python程序:检查G:\drought\data\data1\station下的每个txt文件的最后一行的前三个数是否分别为”2023“、”12“、”31“,如果不是,打印文件名称。
时间: 2024-09-11 12:07:12 浏览: 44
可以编写一个Python脚本来完成这个任务。以下是一个简单的示例代码:
```python
import os
# 指定文件夹路径
folder_path = "G:\\drought\\data\\data1\\station"
# 检查文件夹中每个txt文件的最后一行
for file_name in os.listdir(folder_path):
if file_name.endswith(".txt"):
file_path = os.path.join(folder_path, file_name)
with open(file_path, 'r') as file:
# 读取最后一行
last_line = file.readlines()[-1]
# 拆分最后一行的前三个数
parts = last_line.split()
if len(parts) >= 3 and parts[-3] == '2023' and parts[-2] == '12' and parts[-1] == '31':
continue
else:
print(file_name)
```
这段代码首先导入了os模块用于处理文件路径。然后定义了需要检查的文件夹路径。接着,程序遍历该文件夹中的每一个文件,检查文件名是否以.txt结尾。对于每个.txt文件,程序使用with语句打开文件,并读取最后一行的内容。如果文件的最后一行至少有三个由空格分隔的元素,并且这些元素正好是"2023"、"12"和"31",则继续检查下一个文件;否则,打印出不符合条件的文件名。
请确保在运行这段代码之前,路径"2023"、"12"、"31"是文件最后一行中必须按照这样的顺序出现的,如果是混合顺序或其他分隔符的情况,请相应地调整split()函数中的参数。
阅读全文