如果你遇到一个时间戳格式不正确的情况,你可以使用 try-except
语句来捕获 ValueError
异常,并在异常发生时跳过当前的迭代,继续执行循环。以下是一个简单的例子,展示了如何在时间戳格式不正确时继续循环:
import os
import datetime
# 假设你的文件夹路径是 'folder_path'
folder_path = 'D:\\workspace\\WorkFileSINOPEC\\完整性'
# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):
# 检查文件名是否以时间戳结束
if file_name.endswith('.txt'):
# 提取文件名中的时间戳
timestamp = file_name.split('-')[-1].split('.')[0]
# 尝试将时间戳转换为datetime对象
try:
# 假设时间戳是符合%H%M%S格式的
time_1 = datetime.datetime.strptime(timestamp, "%H%M%S")
# 打印文件大小和时间戳
print(f"文件名: {file_name}, 时间戳: {time_1}")
except ValueError:
# 如果转换失败,打印错误信息并继续循环
print(f"文件名: {file_name}, 时间戳格式不正确,跳过此文件。")
continue # 跳过当前迭代,继续下一次循环
# 循环结束后,你可以在这里添加更多的代码
print("循环结束。")
在这个例子中,我们使用 try
块来尝试将时间戳转换为 datetime
对象。如果 ValueError
异常被触发,表示时间戳格式不正确,我们使用 except
块来捕获异常,打印一条错误信息,并使用 continue
语句跳过当前的迭代,继续执行循环。这样,即使有些文件的时间戳格式不正确,循环也不会中断,程序会继续处理其他文件。