2016-07-15 7 views
0

Предположим у меня есть дерево каталогов, таких как:Отслеживание дерева каталогов в питона

rootdir 
    |---subdir1 
     |---a1.txt 
     |---b1.txt 
     |---c1.txt 
    |---subdir2 
     |---a2.txt 
     |---b2.txt 
     |---c2.txt 

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

for root, dirs, files in os.walk(rootdir): 
    for fil in files: 
     print fil # No means to check that we are within the same subdir 

Результата Ищу бы что-то вроде:

rootdir 
    |---subdir1 
     |---a1.txt 
     |---b1.txt 
     |---c1.txt 
     |---abc1.png 
    |---subdir2 
     |---a2.txt 
     |---b2.txt 
     |---c2.txt 
     |---abc2.png 

ответ

0

Предполагая, что дерево каталогов это просто, попробуйте:

for d in os.walk(rootdir): 
    #start a new figure 
    for f in d[2]: 
     #pull data from file 
     #plot data on current figure 
    #save figure to d[0]+/abc.png 

Этот метод держит вещи сгруппированных вверх по директории. Если дерево каталогов становится более сложным, вы можете использовать три элемента из d, чтобы отфильтровать то, что вы хотите.

Смежные вопросы