大容量のハードディスクで Python のファイル検索をいじっています。私はos.walkとglobを見てきました。私は通常 os.walk を使用します。これは、(通常のサイズのディレクトリの場合) はるかにきれいで、より高速であるように思われるためです。
誰かが両方の経験を持っていて、どちらがより効率的であるかを言うことができますか? 私が言うように、グロブは遅いようですが、ワイルドカードなどを使用できますが、ウォークと同様に、結果をフィルタリングする必要があります。コア ダンプを検索する例を次に示します。
core = re.compile(r"core\.\d*")
for root, dirs, files in os.walk("/path/to/dir/")
for file in files:
if core.search(file):
path = os.path.join(root,file)
print "Deleting: " + path
os.remove(path)
または
for file in iglob("/path/to/dir/core.*")
print "Deleting: " + file
os.remove(file)