Быстрее os.walk или glob?

Я возился с поиском файлов в python на большом жестком диске. Я смотрел на os .walk и glob. Обычно я использую os.walk, поскольку он мне кажется более аккуратным и кажется более быстрым (для каталогов обычного размера).

Кто-нибудь имел опыт работы с ними обоими и мог бы сказать, что более эффективно? скажем, glob кажется медленнее, но вы можете использовать подстановочные знаки и т. д., как и в случае с 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)
29
задан aculich 20 January 2012 в 18:58
поделиться