在python中跟踪目录树

时间:2016-07-15 16:30:11

标签: python directory operating-system

假设我有一个目录树,例如:

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

我想对仅位于各自子目录中的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

1 个答案:

答案 0 :(得分: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的三个元素来过滤掉您想要的内容。