中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python標準庫原理與用法詳解之如何使用os.path

發布時間:2021-10-25 13:12:06 來源:億速云 閱讀:315 作者:iii 欄目:開發技術

這篇文章主要講解了“python標準庫原理與用法詳解之如何使用os.path”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“python標準庫原理與用法詳解之如何使用os.path”吧!

os中的path

查看源碼會看到,在os.py中有這樣幾行

if 'posix' in _names:
    name = 'posix'
    linesep = '\n'
    from posix import *
    #省略若干代碼

elif 'nt' in _names:
    from nt import *
    try:
        from nt import _exit
        __all__.append('_exit')
    except ImportError:
        pass
    import ntpath as path
    #。。。

由于我們是在windows(WindowsNT)中,所以打開ntpath.py文件,可以看到開頭就定義了8個成員變量

curdir = '.'    #當前路徑標識
pardir = '..'   #
extsep = '.'    #擴展名分隔符
sep = '\\'
pathsep = ';'   #環境變量中路徑的分隔符
altsep = '/'    #
defpath = '.;C:\\bin'   #環境變量的存放位置
devnull = 'nul'

此外,還有一個名為supports_unicode_filenames的布爾型成員變量,表示當前系統是否支持unicode的文件名。

可以理解為,path中封裝了一些和操作系統相關,并且在不同操作系統下代碼不同的功能,下面默認from os.path import *

輸入為路徑字符串的單參函數


輸出
normpath()將路徑修改為\\a\\b形式
normcase()將路徑修改為小寫的\\a\\b形式
abspath()返回絕對路徑,其格式為X:\\a\\b
realpath()返回絕對路徑,并消除其中的鏈接
relpath()返回相對路徑,并消除其中的鏈接
split()將輸入路徑分割為兩個部分
例如X:\\a\\b會返回為X:\\ab
splitext()分割文件的擴展名
splidrive()分割出驅動器和其他路徑
basename()最下層的目錄或文件名稱,即split()[1]
dirname()最下層目錄或文件所在目錄,即split()[0]
exists()判斷輸入路徑是否存在,存在則返回True,否則False
lexists()如果路徑損壞,也返回False
isabs()判斷輸入路徑是否為絕對路徑
isfile()判斷輸入路徑是否為文件
isdir()判斷輸入路徑是否為目錄
islink()判斷輸入路徑是否為鏈接
ismount()判斷輸入路徑是否為掛載點(在windows中就是盤符)
例如os.path.ismount('C:\\'),返回為True
expanduser()通過~對路徑進行擴展
expandvars()將路徑擴展為命令行識別的變量

部分示例

>>> from os.path import *
>>> p = abspath('.')
>>> p
'E:\\Documents\\00\\1022'
>>> exists(p)
True
>>> splitdrive(p)
('E:', '\\Documents\\00\\1022')
>>> isfile(p)
False

與文件信息相關的單參函數

其輸入必須為文件路徑,不得為目錄

輸出~.getsize()以字節為單位獲取文件大小~.getctime()獲取文件創建時間,c即create~.getmtime()獲取文件最后修改時間,m即modify~.getatime()獲取文件最后訪問時間,a即access




輸出
~.getsize()以字節為單位獲取文件大小
~.getctime()獲取文件創建時間,c即create
~.getmtime()獲取文件最后修改時間,m即modify
~.getatime()獲取文件最后訪問時間,a即access

輸入為多個參數的函數

os.path.join,用于拼接路徑,超甜的一個功能。很多新手會為新建文件夾而困擾,很多時候不知道是寫D:\test還是D:\test\,而在os.path.join中這兩者基本是等價的。

>>> os.path.join('test','\\test1','test2\\','test3')
'\\test1\\test2\\test3'

判斷是否相同
~.samefile(p1, p2)判斷目錄或文件是否相同
~.sameopenfile(fp1, fp2)兩個打開的文件是否指向同一個文件

commonpath(list)commonprefix(list):返回list中所有path共有的最長路徑,即距離所有文件和文件夾的共同父文件夾。二者區別在于,后者會在返回的路徑加上\

感謝各位的閱讀,以上就是“python標準庫原理與用法詳解之如何使用os.path”的內容了,經過本文的學習后,相信大家對python標準庫原理與用法詳解之如何使用os.path這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宜都市| 建湖县| 黄石市| 黎城县| 肃北| 南丹县| 广河县| 腾冲县| 友谊县| 昌黎县| 玉溪市| 遂昌县| 祁连县| 木兰县| 腾冲县| 锦州市| 鄂温| 新郑市| 武义县| 巴南区| 行唐县| 宜城市| 喜德县| 洛扎县| 绥德县| 精河县| 麻栗坡县| 宜兰市| 东乌珠穆沁旗| 天津市| 长宁区| 安图县| 鄂托克前旗| 泗阳县| 依兰县| 东乌珠穆沁旗| 宜川县| 静安区| 清涧县| 巴南区| 镇宁|