Программа Python для перемещения каталогов и чтения информации о файле

Я только начинаю с Python, но уже нашел его намного более продуктивным, чем скрипты оболочки Bash.

Я пытаюсь написать скрипт Python, который будет перемещаться по каждому каталогу, который выходит из каталога, в который я запускаю скрипт, и для каждого файла, с которым он сталкивается, загружает экземпляр этого класса:

class FileInfo: def __init__(self, filename, filepath): self.filename = filename self.filepath = filepath 

Атрибут filepath будет полным абсолютным путем от root (/). Вот макет псевдокода для моей основной программы:

 from (current directory): for each file in this directory, create an instance of FileInfo and load the file name and path switch to a nested directory, or if there is none, back out of this directory 

Я читал о os.walk () и ok.path.walk (), но мне бы хотелось, чтобы некоторые советы о том, какой самый простой способ реализовать это в Python. Заранее спасибо.

3 Solutions collect form web for “Программа Python для перемещения каталогов и чтения информации о файле”

Я бы использовал os.walk выполнив следующие действия:

 def getInfos(currentDir): infos = [] for root, dirs, files in os.walk(currentDir): # Walk directory tree for f in files: infos.append(FileInfo(f,root)) return infos 

Пытаться

 info = [] for path, dirs, files in os.walk("."): info.extend(FileInfo(filename, path) for filename in files) 

или

 info = [FileInfo(filename, path) for path, dirs, files in os.walk(".") for filename in files] 

для получения списка одного экземпляра FileInfo каждого файла.

Попробуй

import os

для элемента в os.walk (".", "*"):

  print item 
Python - лучший язык программирования в мире.