Python常用模組os.path之檔案及路徑操作方法
以下是 os.path 模組的幾種常用方法:
方法 | 說明 |
---|---|
os.path.abspath(path) | 返回絕對路徑 |
os.path.basename(path) | 返回檔名 |
os.path.commonprefix(list) | 返回list(多個路徑)中,所有path共有的最長的路徑 |
os.path.dirname(path) | 返回檔案路徑 |
os.path.exists(path) | 如果路徑 path 存在,返回 True;如果路徑 path 不存在,返回 False。 |
os.path.lexists | 路徑存在則返回True,路徑損壞也返回True |
os.path.expanduser(path) | 把path中包含的"~"和"~user"轉換成使用者目錄 |
os.path.expandvars(path) | 根據環境變數的值替換path中包含的"$name"和"${name}" |
os.path.getatime(path) | 返回最近訪問時間(浮點型秒數) |
os.path.getmtime(path) | 返回最近檔案修改時間 |
os.path.getctime(path) | 返回檔案 path 建立時間 |
os.path.getsize(path) | 返回檔案大小,如果檔案不存在就返回錯誤 |
os.path.isabs(path) | 判斷是否為絕對路徑 |
os.path.isfile(path) | 判斷路徑是否為檔案 |
os.path.isdir(path) | 判斷路徑是否為目錄 |
os.path.islink(path) | 判斷路徑是否為連結 |
os.path.ismount(path) | 判斷路徑是否為掛載點 |
os.path.join(path1[,path2[,...]]) | 把目錄和檔名合成一個路徑 |
os.path.normcase(path) | 轉換path的大小寫和斜槓 |
os.path.normpath(path) | 規範path字串形式 |
os.path.realpath(path) | 返回path的真實路徑 |
os.path.relpath(path[,start]) | 從start開始計算相對路徑 |
os.path.samefile(path1,path2) | 判斷目錄或檔案是否相同 |
os.path.sameopenfile(fp1,fp2) | 判斷fp1和fp2是否指向同一檔案 |
os.path.samestat(stat1,stat2) | 判斷stat tuple stat1和stat2是否指向同一個檔案 |
os.path.split(path) | 把路徑分割成 dirname 和 basename,返回一個元組 |
os.path.splitdrive(path) | 一般用在 windows 下,返回驅動器名和路徑組成的元組 |
os.path.splitext(path) | 分割路徑,返回路徑名和副檔名的元組 |
os.path.splitunc(path) | 把路徑分割為載入點與檔案 |
os.path.walk(path,visit,arg) | 遍歷path,進入每個目錄都呼叫visit函式,visit函式必須有3個引數(arg,dirname,names),dirname表示當前目錄的目錄名,names代表當前目錄下的所有檔名,args則為walk的第三個引數 |
os.path.supports_unicode_filenames | 設定是否支援unicode路徑名 |
os.path.abspath(path)
輸入相對路徑,返回絕對路徑
Python 3.7.0 (v3.7.0:1bf9cc5093,Jun 27 2018,04:59:51) [MSC v.1914 64 bit (AMD64)] on win32 Type "copyright","credits" or "license()" for more information. >>> import os >>> print(os.path.abspath(".")) C:\Users\28914\AppData\Local\Programs\Python\Python37
os.path.basename(path)
返回路徑最後的檔案或目錄名,單純的字串處理,不會管該路徑是否存在
>>> import os >>> os.path.basename("E:\\abc\\efg.txt") 'efg.txt'
os.path.dirname(path)
和os.path.basename相反,返回路徑中去除了最後的檔案或目錄名後的部分,也是單純的字串處理
>>> import os >>> os.path.dirname("E:\\abc\\efg.txt") 'E:\\abc'
os.path.split(path)
單純的字串處理,分割路徑,返回由其目錄名和檔名組成的元組
>>> import os >>> os.path.split("E:\\abc\\efg.txt") ('E:\\abc','efg.txt')
os.path.splitext(path)
單純的字串處理,分割路徑,返回由其檔名和副檔名組成的元組
>>> import os >>> os.path.splitext("E:\\abc\\efg.txt") ('E:\\abc\\efg','.txt')
os.path.join(dirpath,filename)
將路徑與檔名拼接,根據作業系統自動使用相應的路徑分隔符,Windows用“”,Linux用“/”
>>> import os >>> os.path.splitext("E:\\abc\\efg.txt") ('E:\\abc\\efg','.txt')
os.path.exists(path)
判斷檔案或目錄是否存在,返回True或False
>>> import os >>> os.path.exists("E:\\abc\\efg.txt") False
os.path.isdir(path)
判斷路徑是不是資料夾,路徑不存在同樣返回False
>>> import os >>> os.path.isdir("E:\\abc\\efg.txt") False
os.path.isfile(path)
判斷路徑是不是檔案,路徑不存在同樣返回False
>>> import os >>> os.path.isfile("E:\\abc\\efg.txt") False
os.path.getsize(path)
獲取檔案大小,單位位元組,檔案不存在則報錯,不能直接用於資料夾
>>> import os >>> os.path.getsize("D:\\2019-11-07.txt") 5973
os.path.getctime(path)
獲取檔案建立時間
os.path.getmtime(path)
獲取檔案最後修改時間
os.path.getatime(path)
獲取檔案最近訪問時間
總結
以上所述是小編給大家介紹的Python常用模組os.path之檔案及路徑操作方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!