Для автоматизации некоторых действий пишу простенькие скрипты на питон. Общая логика такая:
1) Получить список папок;
2) Пройти циклом по списку папок заглядывая в каждую папку
3) Получить список файлов внутри папки;
4) Пройти циклом по списку файлов выполняя требуемые действия.
Получение списков убрано в функцию.
Периодически возникают ошибки FileNotFoundError: . Т.е. я написал скрипт, перебор файлов в нем работает, но есть ошибка во время выполнения целевого действия (пункт 4 в схеме выше). Я начитаю править алгоритм этого действия и внезапно собираю ошибки. FileNotFoundError: . Потом еще какое-то количество правок ОПЯТЬ же главного действия и ошибки FileNotFoundError: исчезают. Часть кода, отвечающую за перебор файлов я не трогал уже хрен знает сколько времени. Собственно код.
import json import os import string from mp3_tagger import VERSION_2, MP3File def func_list_mp3_files(): return [f for f in os.listdir('.') if os.path.isfile('.' + '\\' + f) and f.endswith('.mp3')] def func_list_dirs(): return [f for f in os.listdir('.') if os.path.isdir('.' + '\\' + f)] def func_main(): for folder in func_list_dirs(): os.chdir(os.path.join('.', folder)) for file in func_list_mp3_files(): try: some code except Exception as error: print (error) os.chdir('..')
Может ли это быть связано с “занятостью” папок/файлов сторонними процессами windows? И если может как запретить Windows лезть туда?