Как улучшить поиск с помощью os.walk и fnmatch
Я используюos.walk
а такжеfnmatch
с фильтрами для поиска жесткого диска компьютера по всем файлам изображений. Это прекрасно работает, но очень медленно, так как поиск + -70000 изображений занимает около 9 минут.
Есть идеи по оптимизации этого кода, чтобы он работал быстрее? Любые другие предложения?
Кстати, я использую Python 2.7.2.
import fnmatch
import os
images = ['*.jpg', '*.jpeg', '*.png', '*.tif', '*.tiff']
matches = []
for root, dirnames, filenames in os.walk("C:\\"):
for extension in images:
for filename in fnmatch.filter(filenames, extension):
matches.append(os.path.join(root, filename))