激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python 標準庫原理與用法詳解之os.path篇

python 標準庫原理與用法詳解之os.path篇

2022-02-16 10:42微小冷 Python

os.path模塊主要用于文件的屬性獲取,在編程中經常用到,本文將帶你熟悉這個模塊并掌握它的用法,感興趣的朋友跟小編來看看吧

os中的path

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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個成員變量

?
1
2
3
4
5
6
7
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() 將路徑擴展為命令行識別的變量

部分示例

?
1
2
3
4
5
6
7
8
9
10
>>> 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中這兩者基本是等價的。

?
1
2
>>> 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內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/m0_37816922/article/details/120904481

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色婷婷久久一区二区 | 国产精品爱久久久久久久 | 日本精品视频一区二区三区四区 | 最新黄色电影网站 | 国产视频在线观看一区二区三区 | av中文字幕免费在线观看 | 蜜桃视频在线免费观看 | 精品久久久久久久久久久αⅴ | 久久精品一区二区三区国产主播 | 国产一区二区三区在线免费观看 | 成年人黄色免费电影 | 性欧美暴力猛交69hd | 日韩欧美精品中文字幕 | 亚洲性综合网 | 成人免费视频 | 久久99亚洲精品久久99果 | 欧美亚洲一区二区三区四区 | 91精品国产99久久久久久 | 粉色视频污 | 久久精品日产第一区二区三区 | 日日操视频 | 毛片免费一区二区三区 | 成人免费一区二区三区在线观看 | 成人免费毛片网站 | 国产精品性夜天天视频 | 精品亚洲综合 | 亚洲一区二区网址 | 电影一级毛片 | 久久视讯 | 精品久久久久久久久久久久包黑料 | 黄色免费小网站 | 中文字幕视频在线播放 | 成年人精品视频 | 欧美成人午夜影院 | av影院在线 | 成人三级免费电影 | 日本成年网 | h网站在线观看 | 日本a∨精品中文字幕在线 狠狠干精品视频 | 日韩黄色一级视频 | 日本视频在线免费观看 |