Возвращает количество файлов в каталоге и подкаталоге

Попытка создать функцию, которая возвращает # файлов, найденных в каталоге и его подкаталогах. Просто нужна помощь при запуске

Один лайнер

import os cpt = sum([len(files) for r, d, files in os.walk("G:\CS\PYTHONPROJECTS")]) 

Используйте os.walk . Он сделает рекурсию для вас. См. http://www.pythonforbeginners.com/code-snippets-source-code/python-os-walk/ для примера.

 total = 0 for root, dirs, files in os.walk(folder): total += len(files) 

Просто добавьте инструкцию elif которая заботится о каталогах:

 def fileCount(folder): "count the number of files in a directory" count = 0 for filename in os.listdir(folder): path = os.path.join(folder, filename) if os.path.isfile(path): count += 1 elif os.path.isfolder(path): count += fileCount(path) return count