Jak poprawić wyszukiwanie za pomocą os.walk i fnmatch
używamos.walk
ifnmatch
z filtrami do wyszukiwania dysku twardego komputera w poszukiwaniu wszystkich plików obrazów. Działa to doskonale, ale jest bardzo powolne, ponieważ przeszukiwanie + -70000 obrazów zajmuje około 9 minut.
Jakieś pomysły na optymalizację tego kodu, aby działać szybciej? Jakieś inne sugestie?
Używam python 2.7.2 przy okazji.
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))