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

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

3 Solutions collect form web for “Возвращает количество файлов в каталоге и подкаталоге”

Один лайнер

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 
  • Django находит пути между двумя вершинами в графе
  • Рекурсивно построить иерархическое дерево JSON?
  • Основы рекурсии в Python
  • Можете ли вы объяснить этот рекурсивный код «n select k» для меня?
  • Как добавить элементы в список с помощью рекурсии?
  • InOrder Traversal в Python
  • пираринг, вперед и рекурсия
  • Python: как RECURSIVELY удалять значения None из структуры данных NESTED (списки и словари)?
  • Python - лучший язык программирования в мире.