給定一個文件名列表,如果它們存在於給定目錄或其子目錄中,我想爲這些文件創建完整路徑。現在我使用此代碼搜索目錄中文件列表的最快方法
def construct_path(file_list, directory):
file_path_list = []
for name in file_list:
for dir, subdir, filenames in os.walk(directory):
if name in filenames:
file_path_list.append(os.path.join(dir, name))
return file_path_list
因此,此處正在爲列表中的每個文件抓取目錄。有沒有更快/更好的方法來做到這一點?
逆轉循環的順序可能會做它。也許從'file_list'中刪除找到的名字可能會有所幫助。如果你能找到他們,請儘早離開。 – Blorgbeard
看看這個東西,它使用本地調用https://docs.python.org/3/library/os.html#os.scandir – Andrey