Як перебирати файли в каталозі за допомогою Python?

Як перебирати файли в каталозі за допомогою Python?

Довідник також іноді відомий як папка, це одиниця організаційної структури у файловій системі системи для зберігання та пошуку файлів або кількох папок. Python як мова сценаріїв надає різні методи для перебирати файли в каталозі.

Нижче наведено різні підходи, за допомогою яких можна перебирати файли в каталозі за допомогою python:

Спосіб 1: os.listdir()

Ця функція повертає список файли і підкаталоги присутні в даному каталозі. Ми можемо відфільтрувати список, щоб отримати лише файли за допомогою os.path.isfile() функція:

приклад:

Python3




# import required module> import> os> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> filename> in> os.listdir(directory):> > f> => os.path.join(directory, filename)> > # checking if it is a file> > if> os.path.isfile(f):> > print> (f)>

Вихід:

Спосіб 2: os.scandir()

Цей метод використовується для отримання ітератора os.DirEntry об’єкти, що відповідають записам у каталозі, заданому вказаним шляхом.

приклад:

Python3




# import required module> import> os> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> filename> in> os.scandir(directory):> > if> filename.is_file():> > print> (filename.path)>

Вихід:

Спосіб 3: модуль pathlib

Ми можемо перебирати файли в каталозі за допомогою Path.glob() функція, яка поміщає вказаний шаблон у вказаний каталог і видає відповідні файли. Path.glob('*') видає всі файли у вказаному каталозі

приклад:

Python3




# import required module> from> pathlib> import> Path> # assign directory> directory> => 'files'> # iterate over files in> # that directory> files> => Path(directory).glob(> '*'> )> for> file> in> files:> > print> (> file> )>

Вихід:

Спосіб 4: os.walk()

Ми також можемо шукати підкаталоги за допомогою цього методу, оскільки він дає 3-кортеж (шлях до каталогу, імена каталогів, імена файлів) .

  • корінь : друкує каталоги лише з того, що ви вказали.
  • казати : друкує підкаталоги з кореня.
  • файли : друкує всі файли з кореня та каталогів.

Python3




# import required module> import> os> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> root, dirs, files> in> os.walk(directory):> > for> filename> in> files:> > print> (os.path.join(root, filename))>

Вихід:

Спосіб 5: глобальний модуль

The glob.iglob() функція повертає ітератор списку шляхів, які відповідають заданому шаблону.

приклад:

Python3




# import required module> import> glob> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> filename> in> glob.iglob(f> '{directory}/*'> ):> > print> (filename)>

Вихід: