Я пытаюсь распечатать список файлов в диапазоне дат, заданных пользователем.Как продолжить цикл, когда файл не найден
Это мои файлы примеров: Обратите внимание, что нет «2015-01-01» в файле
Если я входной диапазон от 2015-01-02
до 2015-01-05
будет выводить список, если файлы. Но если я вход от 2015-01-01
к 2015-01-05
это приведет к ошибке:
OSError: (2, 'No such file or directory', '\\2015-01-01')
Можно ли иметь примерочные кроме обводного или продолжать так, что мой цикл будет продолжаться еще и печатает 2015-01-02
к 2015-01-05
. И просто отрицайте, что файл не найден.
Это мой текущий код:
FileNameList = []
date = start_date
while date <= end_date:
folder_name = date.strftime(DATE_FORMAT)
data_folder = path.join(pathDir, folder_name)
#print data_folder
for filefolder in os.listdir(data_folder):
filefolder = data_folder + "\\" + filefolder
FileNameList.append(filefolder)
date += delta_one_day
for filefolder in FileNameList:
for file in os.listdir(filefolder):
if ".txt" in file:
filename = filefolder + "\\" + file
print filename
Предполагается, что оператор 'FileNameList.append' должен находиться в первом цикле for? Переменная 'filefolder', используемая вашим циклом' for', перезаписывается на каждой итерации цикла 'for', а затем переменная' filefolder' добавляется к 'FilenameList' только после завершения цикла' for'. – samstav