Я пытаюсь сделать что-то со всеми файлами по заданному пути. Я не хочу заранее собирать все имена файлов, а затем что-то делать с ними, поэтому я попробовал следующее:
import os
import stat
def explore(p):
s = ''
list = os.listdir(p)
for a in list:
path = p + '/' + a
stat_info = os.lstat(path )
if stat.S_ISDIR(stat_info.st_mode):
explore(path)
else:
yield path
if __name__ == "__main__":
for x in explore('.'):
print '-->', x
Но этот код пропускает каталоги, когда попадает в них, вместо того, чтобы выдавать их содержимое. Что я делаю не так?