Ускоренный поиск указанных c каталогов по всему диску в python - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть сетевой диск с данными. Многие из папок, много файлов. На диске есть несколько каталогов с журналами с именем LOGS_XXX, в этих папках находятся различные файлы и папки, включая интересующие меня папки с именем YYYYFinal, где YYYY - год создания. Поэтому я просто хочу создать список путей к этим каталогам, но только if YYYY > 2017. В одном журнале может быть более одного YYYYFinal. Ничего интересного тоже не может быть.

Поэтому я поместил здесь код детали, ищущий каталоги по условиям и создающий список:

path = path_to_network_drive

def findAllOutDirs(path):
    finalPathList = []
    for root, subdirs, files in os.walk(path):
            for d in subdirs:
                    if d == "FINAL" or d == "Final":
                        outPath = root+r"\{}".format(d)
                        if ("LOGS" in outPath) and ("2018" in outPath or "2019" in outPath or "2020" in outPath):
                            finalPathList.append(outPath)
    return finalPathList

И этот код работает хорошо. Я имею в виду, я получил окончательный список, но это займет много времени. Так что, может быть, кто-то отсюда видит некоторые ошибки, плохо использует код или просто знает лучший вариант сделать это по python?

Спасибо!

...