python os模塊常用的29種方法使用詳解
os.getcwd()
獲取當(dāng)前工作目錄,即當(dāng)前python腳本工作的目錄路徑
print(os.getcwd()) >>E:\pycharm\test
os.chdir(“dirname”)
改變當(dāng)前腳本工作目錄;相當(dāng)于shell下cd
os.chdir('E:\pycharm') print(os.getcwd()) >>E:\pycharm
os.curdir
是一個(gè)值,返回當(dāng)前目錄: ('.')
print(os.curdir) >>.
os.pardir
也是一個(gè)值,獲取當(dāng)前目錄的父目錄字符串名:('…')
print(os.pardir) >>..
os.makedirs(‘dirname1/dirname2')
可生成多層遞歸目錄
os.makedirs('path1/path2') os.chdir('./path1/path2') print(os.getcwd()) >>E:\pycharm\test\path1\path2
os.removedirs(‘dirname1')
若目錄為空,則刪除,并遞歸到上一級(jí)目錄,如若也為空,則刪除,依此類推
os.chdir('./path1/path2') print(os.getcwd()) os.removedirs('E:/pycharm/test/path1/path2') print(os.getcwd())
如果刪除的文件夾是工作路徑,則不能刪除。
os.removedirs('E:/pycharm/test/path1/path2')
os.mkdir(‘dirname')
生成單級(jí)目錄
os.mkdir('./path1')
os.rmdir(‘dirname')
刪除單級(jí)空目錄,若目錄不為空則無法刪除。
os.rmdir('./path1')
os.listdir(‘dirname')
列出指定目錄下的所有文件和子目錄,包括隱藏文件,并以列表方式打印。
print(os.listdir('./')) >>['.idea', '0.py', '1.py', 'log.py', 'log.txt', 'log.txt.1', 'os_test.py', 'test.py', '__pycache__']
os.remove()
刪除一個(gè)文件,不能刪除文件夾。
print(os.listdir('./')) os.remove('./log.txt') print(os.listdir('./')) >>['.idea', '0.py', '1.py', 'log.py', 'log.txt', 'log.txt.1', 'os_test.py', 'test.py', '__pycache__'] >>['.idea', '0.py', '1.py', 'log.py', 'log.txt.1', 'os_test.py', 'test.py', '__pycache__']
os.rename(“oldname”,“newname”)
重命名文件/目錄
print(os.listdir('./')) os.rename('./log.txt.1', 'log.other') print(os.listdir('./')) >>['.idea', '0.py', '1.py', 'log.py', 'log.txt.1', 'os_test.py', 'path', 'test.py', '__pycache__'] >>['.idea', '0.py', '1.py', 'log.other', 'log.py', 'os_test.py', 'path', 'test.py', '__pycache__']
os.stat(‘path/filename')
獲取文件/目錄信息
print(os.stat('./')) print(os.stat('./log.py')) >>os.stat_result(st_mode=16895, st_ino=281474976733851, st_dev=265296634, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1591056501, st_mtime=1591056501, st_ctime=1585357336) >>os.stat_result(st_mode=33206, st_ino=1970324837041014, st_dev=265296634, st_nlink=1, st_uid=0, st_gid=0, st_size=3102, st_atime=1590469701, st_mtime=1590469701, st_ctime=1590462783)
os.sep
輸出操作系統(tǒng)特定的路徑分隔符,win下為"\",Linux下為"/"
print(os.sep) >>\
os.linesep
輸出當(dāng)前平臺(tái)使用的行終止符,win下為"\r\n",Linux下為"\n"
os.pathsep
輸出用于分割文件路徑的字符串 win下為;,Linux下為:
print(os.pathsep) >>;
os.name
輸出字符串指示當(dāng)前使用平臺(tái)。win->‘nt'; Linux->‘posix'
print(os.name) >>nt
os.system(“bash command”)
運(yùn)行shell命令,直接顯示
os.environ
獲取系統(tǒng)環(huán)境變量
os.path.abspath(path)
返回path規(guī)范化的絕對(duì)路徑
print(os.path.abspath('./log.py')) >>E:\pycharm\test\log.py
os.path.split(path)
將path分割成目錄和文件名二元組返回
print(os.path.split('./log.py')) >>('.', 'log.py')
os.path.dirname(path)
返回path的目錄。其實(shí)就是os.path.split(path)的第一個(gè)元素
print(os.path.dirname('./log.py')) >>.
os.path.basename(path)
返回path最后的文件名。如果path以/或\結(jié)尾,那么就會(huì)返回空值。即os.path.split(path)的第二個(gè)元素
print(os.path.basename('./log.py')) print(os.path.basename('./')) >>log.py >>
os.path.exists(path)
如果path存在,返回True;如果path不存在,返回False
print(os.path.exists('./log.py')) print(os.path.exists('./log')) >>True >>False
os.path.isabs(path)
如果path是絕對(duì)路徑,返回True
print(os.path.isabs('./log.py')) print(os.path.isabs('E:/pycharm/test/log')) >>False >>True
os.path.isfile(path)
如果path是一個(gè)存在的文件,返回True。否則返回False
print(os.path.isfile('./log')) print(os.path.isfile('./log.py')) >>False >>True
os.path.isdir(path)
如果path是一個(gè)存在的目錄,則返回True。否則返回False,文件也返回False。
print(os.path.isdir('./log.py')) print(os.path.isdir('./path_other')) >>False >>True
os.path.join(path1, path2, …)
將多個(gè)路徑組合后返回,第一個(gè)絕對(duì)路徑之前的參數(shù)將被忽略
print(os.path.join('./', 'path1', 'path2', 'path3')) print(os.path.join('./', 'path1', 'path2', os.getcwd(), 'path3')) >>./path1\path2\path3 >>E:\pycharm\test\path3
os.path.getatime(path)
返回path所指向的文件或者目錄的最后存取時(shí)間
print(os.path.getatime('./log.py')) >>1590469701.9787416
os.path.getmtime(path)
返回path所指向的文件或者目錄的最后修改時(shí)間
print(os.path.getmtime('./log.py')) >>1590469701.6769156
到此這篇關(guān)于python os模塊常用的29種方法使用詳解的文章就介紹到這了,更多相關(guān)python os模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 3利用Dlib 19.7實(shí)現(xiàn)攝像頭人臉檢測(cè)特征點(diǎn)標(biāo)定
這篇文章主要為大家詳細(xì)介紹了python 3利用Dlib 19.7實(shí)現(xiàn)攝像頭人臉檢測(cè)特征點(diǎn)標(biāo)定,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02Anconda環(huán)境下Vscode安裝Python的方法詳解
anaconda指的是一個(gè)開源的Python發(fā)行版本,其包含了conda、Python等180多個(gè)科學(xué)包及其依賴項(xiàng)。這篇文章主要介紹了Anconda環(huán)境下Vscode安裝Python的方法,需要的朋友可以參考下2020-03-03Python答題卡識(shí)別并給出分?jǐn)?shù)的實(shí)現(xiàn)代碼
本文帶領(lǐng)大家學(xué)習(xí)Python答題卡識(shí)別并給出分?jǐn)?shù)的實(shí)現(xiàn)代碼,代碼實(shí)現(xiàn)思路清晰,簡(jiǎn)單易懂,Python識(shí)別答題卡相關(guān)知識(shí)感興趣的朋友一起看看吧2021-06-06Python+Opencv實(shí)戰(zhàn)之人臉追蹤詳解
人臉處理是人工智能中的一個(gè)熱門話題,人臉處理可以使用計(jì)算機(jī)視覺算法從人臉中自動(dòng)提取大量信息。本文將展示OpenCV Python實(shí)現(xiàn)人臉追蹤的示例代碼,需要的可以參考一下2021-11-11Python基礎(chǔ)學(xué)習(xí)之時(shí)間轉(zhuǎn)換函數(shù)用法詳解
這篇文章主要介紹了Python基礎(chǔ)學(xué)習(xí)之時(shí)間轉(zhuǎn)換函數(shù)用法,結(jié)合實(shí)例形式分析了Python常見的日期時(shí)間獲取、轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2019-06-06Python實(shí)現(xiàn)iOS自動(dòng)化打包詳解步驟
這篇文章主要介紹了Python實(shí)現(xiàn)iOS自動(dòng)化打包詳解步驟,文中通過示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10淺談keras中l(wèi)oss與val_loss的關(guān)系
這篇文章主要介紹了淺談keras中l(wèi)oss與val_loss的關(guān)系,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06