logo

Як перебирати файли в каталозі за допомогою 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


конвертувати об'єкт java в json



# 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)>

>

>

Вихід: