1.遍歷指定目錄及其子目錄下所有文件
import osfor dirpath,dirnames,filenames in os.walk("/tmp"): for i in filenames: PRint os.path.join(dirpath,i)詳細說明:os.walk()返回一個三元組,(dirpath, dirnames, filenames)dirpath是目錄的路徑,數(shù)據結構為一個字符串,dirnames是該目錄下的所有子目錄的名字,數(shù)據結構為一個list,filenames是該目錄下所有非目錄的文件名,數(shù)據結構為一個list舉例來說:以我電腦的/tmp目錄為例/tmp目錄下的結構為:藍色為目錄
第一次調用os.walk()時,dirpath="/tmp",dirnames=['.vbox-lgamtj-
此時,dirpath="/tmp/.vbox-lgamtj-ipc"dirnames=[]filenames=['ipcd', 'lock']對于filenames中的每一個元素,調用os.path.join(dirpath,i)就又得到/tmp/.vbox-lgamtj-ipc下所有文件的路徑此時,如果.vbox-lgamtj-ipc下還有子目錄,則又會先遍歷完其所有子目錄,才會返回到上一級/tmp目錄下的子目錄去遍歷,即是一個遞歸操作最后依次對遍歷/tmp目錄得到的dirnames執(zhí)行os.walk(),就可得到/tmp目錄及其子目錄下的所有文件路徑
新聞熱點
疑難解答