Отобразить файлы в директории.

(открыть в новой вкладке)

Условие:

ПРОГРАММА ВЫЗЫВАЕТСЯ В ТЕКУЩЕМ КАТАЛОГЕ И ВЫВОДИТ ВСЕ ФАЙЛЫ В НЁМ И ВО ВСЕХ ВЛОЖЕННЫХ.
Алгоритм программы рекурсивный с прямым обходом. Программу легко расширить для выполнения разных операций с файлами.

Код:

"""ПРОГРАММА ВЫЗЫВАЕТСЯ В ТЕКУЩЕМ КАТАЛОГЕ И ВЫВОДИТ ВСЕ ФАЙЛЫ В НЁМ И ВО ВСЕХ ВЛОЖЕННЫХ.
Алгоритм программы рекурсивный с прямым обходом. Программу легко расширить для выполнения разных операций с файлами."""

import pathlib, os


def main():
    a = pathlib.Path.cwd()                                          # текущее расположение, объект Pathlib
    b = os.listdir(a)                                               # список всего содержимого текущего каталога в список
    for i in b:                                                     # обходим содержимое каталога
        x = str(a / i)
        if os.path.isfile(x):                                       # если содержимое каталога является файлом, то выводим на печать
            print(x)
        else:                                                       # если содержимое каталога является каталогом, то проваливаемся в него и рекурсивно запускам текщую функция
            os.chdir(a / i)
            main()
    return                                                          # базовым случаем является самый нижний каталог, в котором не окажется других каталогов и тем самым код функции закончится и вызовет возврат стека


main()