OS模塊是python中用來對目錄操作的一個模塊,
基本函式如下:
os.mkdir():創建一個目錄;os.makedirs():創建多層目錄,
os.rmdir():洗掉一個目錄;os.removedirs():洗掉多層目錄,
os.listdir():列出目錄下的目錄及檔案,
os.getcwd():獲取當前絕對路徑,
os.chdir():改變當前路徑,
os.walk():遍歷給定路徑下的目錄和檔案,
基本使用如下:
>>> import os >>> os.mkdir('text') >>> os.makedirs('a/b/c/d') >>> os.listdir('.') ['a', 'text', 'zz.py', '題目'] >>> os.rmdir('text') >>> os.removedirs('a/b/c/d') >>> os.listdir('.') ['zz.py', '題目'] >>> os.listdir('c:/') ['$Recycle.Bin', 'Documents and Settings', 'hiberfil.sys', 'Intel', 'MSOCache', 'PerfLogs', 'Program Files', 'Program Files (x86)', 'ProgramData', 'Recovery', 'swapfile.sys', 'System Volume Information', 'Users', 'vnc', 'vnc.zip', 'Windows'] >>> os.getcwd() 'E:\\1.個人網盤云端\\2.學習成長\\4.python\\Demo' >>> os.chdir('c:/') >>> os.listdir('.') ['$Recycle.Bin', 'Documents and Settings', 'hiberfil.sys', 'Intel', 'MSOCache', 'PerfLogs', 'Program Files', 'Program Files (x86)', 'ProgramData', 'Recovery', 'swapfile.sys', 'System Volume Information', 'Users', 'vnc', 'vnc.zip', 'Windows'] >>> os.chdir('E:\\1.個人網盤云端\\2.學習成長\\4.python\\Demo') >>> os.listdir('.') ['zz.py', '題目'] >>>
兩個小例子:遍歷目錄下的檔案,
#!/usr/bin/python # -*- coding: utf-8 -*- import os def dirList(path): filelist = os.listdir(path) for filename in filelist: fpath = os.path.join(path,filename) if os.path.isdir(fpath): dirList(fpath) print(fpath) dirList('E:\\1.個人網盤云端\\2.學習成長\\4.python\\Demo\\textdir')
使用os.walk()遍歷目錄下的目錄和檔案,
#!/usr/bin/python # -*- coding: utf-8 -*- import os #Os.Walk()函式,遍歷給定路徑下的目錄和檔案 dirt = os.walk('E:\\1.個人網盤云端\\2.學習成長\\4.python\\Demo\\textdir') #回傳一個元組,([路徑][目錄][檔案]) for path,dirlist,filelist in dirt: for filename in filelist: print(os.path.join(path,filename))
os.walk模塊回傳的是一個元組,里面有3個串列,分別存放絕對路徑、路徑下的目錄、路徑下的檔案,
不過不能直接查看,它是一個walk的物件,需要遍歷才能讀取資料,
測驗:
>>> import os >>> dirt = os.walk('E:\\1.個人網盤云端\\2.學習成長\\4.python\\Demo\\textdir') >>> dirt <generator object walk at 0x04033DF0> >>> for path,dirlist,filelist in dirt: print(path,dirlist,filelist) E:\1.個人網盤云端\2.學習成長\4.python\Demo\textdir ['file1', 'file2', 'file3', 'file4', 'file5', 'timu'] [] E:\1.個人網盤云端\2.學習成長\4.python\Demo\textdir\file1 [] ['檔案1.txt', '文件2.txt'] E:\1.個人網盤云端\2.學習成長\4.python\Demo\textdir\file2 [] ['檔案3.txt'] E:\1.個人網盤云端\2.學習成長\4.python\Demo\textdir\file3 [] [] E:\1.個人網盤云端\2.學習成長\4.python\Demo\textdir\file4 [] [] E:\1.個人網盤云端\2.學習成長\4.python\Demo\textdir\file5 [] []
os.walk()用的最多的應該就是里面的filelist,里面包含了所有檔案名稱,
這里os.path.join(path,filename)的意思是將path和filename鏈接起來,下去試一試就明白了,
讀書和健身總有一個在路上
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/152392.html
標籤:Python
上一篇:selenium + geckodriver報 Message: Unable to find a matching set of capabilities
