私はフィルターを使用os.walk
しfnmatch
て、すべての画像ファイルを PC の hdd で検索しています。これは問題なく動作しますが、+-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))