2016-03-24 75 views
2

在Python中,我想列出根目錄中的所有目錄,並將目錄編號與目錄一起打印出來。然後我想打印出該目錄中的文件。Python:使用枚舉的os.walk()

的代碼會是這樣的:

for subdir, dirs, files in os.walk(root_dir): 
    print "Directory " + str(dir_num) + " = " subdir 
    for (file_num, file) in enumrate(files): 
     print "File " + str(file_num) + " = " file 

但我怎麼能得到dir_num的值,即在根目錄的目錄的數量?我知道如何做到這一點要打印的文件數,使用enumerate(),但我不能確定如何將其應用到os.walk() ......

回答

4

,您仍然可以使用enumerate()

for dirnum, (subdir, dirs, files) in enumerate(os.walk(root_dir)): 

您需要因爲enumerate()只會返回兩個項目:索引和元組subdir, dirs, files,所以括號爲subdir, dirs, files