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