1. 程式人生 > 程式設計 >Python常用模組os.path之檔案及路徑操作方法

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之檔案及路徑操作方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!