Python 【os.path()模組解析】
阿新 • • 發佈:2020-10-16
下面的函式多為常用的,想要了解更多的方法可以去檢視官方文件:
os.path()模組主要用於獲取檔案的屬性
方法 | 說明 |
---|---|
os.path.abspath(path) | 返回path規範化的絕對路徑 |
os.path.basename(path) | 返回path最後的檔名。如果path以/或\結尾,那麼就會返回空值。即os.path.split(path)的第二個元素 |
os.path.commonprefix(list) | 返回list(多個路徑)中,所有path共有的最長的路徑 |
os.path.dirname(path) | 返回path的目錄。其實就是os.path.split(path)的第一個元素 |
os.path.exists(path) | 如果路徑 path 存在,返回 True;如果路徑 path 不存在,返回 False |
os.path.getatime(path) | 返回最近訪問時間(浮點型秒數) |
os.path.getmtime(path) | 返回最近檔案修改時間 |
os.path.getctime(path) | 返回檔案 path 建立時間 |
os.path.getsize(path) | 返回檔案大小(位元組),如果檔案不存在就返回錯誤 |
os.path.isabs(path) | 判斷是否為絕對路徑,如果path是絕對路徑,返回True |
os.path.isfile(path) | 判斷路徑是否為檔案,如果path是存在的檔案,返回True |
os.path.isdir(path) | 判斷路徑是否為目錄,如果path是存在的目錄,返回True |
os.path.islink(path) | 判斷路徑是否為連結 |
os.path.ismount(path) | 判斷路徑是否為掛載點 |
os.path.join(path1[, path2[, …]]) | 將多個路徑組合後返回,第一個絕對路徑之前的引數將被忽略 |
os.path.normcase(path) | 在Linux和Mac平臺上,該函式會原樣返回path,在windows平臺上會將路徑中所有字元轉換為小寫,並將所有斜槓轉換為反斜槓 |
os.path.normpath(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) | 分割路徑,返回路徑名和副檔名的元組 |
例項1:os.path.abspath
>>> os.path.abspath('test.csv') 'C:\\Users\\Administrat\\程式碼TRY\\test.ipynb' >>> os.path.abspath('../Users\\test.ipynb') 'C:\\Users\\Administrat\\Users\\test.ipynb'
例項2:os.path.basename
>>> os.path.basename('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') 'test.ipynb' # 如果path以/或\結尾,那麼就會返回空值 >>> os.path.basename('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb\\') ''
例項3:os.path.commonprefix
>>> os.path.commonprefix(['C:\\Users\\Administrat\\程式碼TRY','C:\\Users\\Administrat','C:\\Users\\Administrat\\程式碼TRY\\test.ipynb']) 'C:\\Users\\Administrat'
例項4:os.path.dirname
>>> os.path.dirname('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') 'C:\\Users\\Administrat\\程式碼TRY'
例項5:os.path.exists
>>> os.path.exists('c:\\') True >>> os.path.exists('c:\\程式碼TRY') False
例項6:os.path.getatime/os.path.getmtime/os.path.getctime
>>> os.path.getatime('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') 1558430357.1332054 # os.path.getatime(path)返回最近訪問時間(浮點型秒數) # os.path.getmtime(path)返回最近檔案修改時間 # os.path.getctime(path)返回檔案 path 建立時間
例項7:os.path.getsize
>>> os.path.getsize('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') 5915
例項8:os.path.isabs/os.path.isfile/os.path.isdir/os.path.islink/os.path.ismount
>>> os.path.isabs('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') True >>> os.path.isabs('.\\程式碼TRY\\test.ipynb') False # os.path.isabs(path)判斷是否為絕對路徑,如果path是絕對路徑,返回True # os.path.isfile(path)判斷路徑是否為檔案,如果path是存在的檔案,返回True # os.path.isdir(path)判斷路徑是否為目錄,如果path是存在的目錄,返回True # os.path.islink(path)判斷路徑是否為連結 # os.path.ismount(path)判斷路徑是否為掛載點
例項9:os.path.join
>>> os.path.join('c:\\', 'Administrat', 'test.ipynb') 'c:\\Administrat\\test.ipynb' # 第一個絕對路徑之前的引數將被忽略 >>> os.path.join('\\程式碼TRY', 'c:\\', 'Administrat', 'test.ipynb') 'c:\\Administrat\\test.ipynb'
例項10:os.path.normcase
# 在windows平臺上會將路徑中所有字元轉換為小寫,並將所有斜槓轉換為反斜槓 >>> os.path.normcase('c:/WINDOWS\\system32\\') 'c:\\windows\\system32\\'
例項11:os.path.normpath
>>> os.path.normpath('c://windows\\System32\\../Temp/') 'c:\\windows\\Temp'
例項12:os.path.relpath
>>> os.path.relpath('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb', '程式碼TRY') '..\\test.ipynb'
例項13:os.path.samefile/os.path.sameopenfile/os.path.samestat
# os.path.samefile(path1, path2)判斷目錄或檔案是否相同 # os.path.sameopenfile(fp1, fp2)判斷fp1和fp2是否指向同一檔案 # os.path.samestat(stat1, stat2)判斷stat tuple stat1和stat2是否指向同一個檔案
例項14:os.path.split
# 返回一個二元組 >>> os.path.split('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') ('C:\\Users\\Administrat\\程式碼TRY', 'test.ipynb') >>> os.path.split('C:\\Users\\Administrat\\程式碼TRY\\') ('C:\\Users\\Administrat\\程式碼TRY', '')
例項15:os.path.splitdrive
>>> os.path.splitdrive('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') ('C:', '\\Users\\Administrat\\程式碼TRY\\test.ipynb')
例項16:os.path.splitext
>>> os.path.splitext('C:\\Users\\Administrat\\程式碼TRY\\test.ipynb') ('C:\\Users\\Administrat\\程式碼TRY\\test', '.ipynb')
關注、留言,我們一起學習,您的收藏是我持續更新的動力!
===============Talk is cheap, show me the code,bye-bye================