[python] Как я могу перебирать файлы в заданном каталоге?



Answers

Вы можете попробовать использовать модуль glob

import glob

for filename in glob.iglob('/foobar/*.asm'):
     print('/foobar/%s' % filename)
Question

Мне нужно перебирать все .asm файлы внутри заданного каталога и выполнять некоторые действия над ними.

Как это можно сделать эффективным образом?




Python 3.4 и более поздние pathlib предлагают pathlib в стандартной библиотеке. Вы можете сделать:

from pathlib import Path

asm_pths = [pth for pth in Path.cwd().iterdir()
            if pth.suffix == '.asm']

Или, если вам не нравятся перечни:

asm_paths = []
for pth in Path.cwd().iterdir():
    if pth.suffix == '.asm':
        asm_pths.append(pth)

Объекты Path могут быть легко преобразованы в строки.




Related