python os模組常用的29種方法使用詳解
os.getcwd()
獲取當前工作目錄,即當前python指令碼工作的目錄路徑
print(os.getcwd()) >>E:\pycharm\test
os.chdir(“dirname”)
改變當前指令碼工作目錄;相當於shell下cd
os.chdir('E:\pycharm') print(os.getcwd()) >>E:\pycharm
os.curdir
是一個值,返回當前目錄: ('.')
print(os.curdir) >>.
os.pardir
也是一個值,獲取當前目錄的父目錄字串名:('…')
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')
若目錄為空,則刪除,並遞迴到上一級目錄,如若也為空,則刪除,依此類推
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')
生成單級目錄
os.mkdir('./path1')
os.rmdir(‘dirname')
刪除單級空目錄,若目錄不為空則無法刪除。
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()
刪除一個檔案,不能刪除資料夾。
print(os.listdir('./')) os.remove('./log.txt') print(os.listdir('./')) >>['.idea','__pycache__'] >>['.idea','__pycache__']
os.rename(“oldname”,“newname”)
重新命名檔案/目錄
print(os.listdir('./')) os.rename('./log.txt.1','log.other') print(os.listdir('./')) >>['.idea','path','log.other','__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_size=3102,st_atime=1590469701,st_mtime=1590469701,st_ctime=1590462783)
os.sep
輸出作業系統特定的路徑分隔符,win下為"\",Linux下為"/"
print(os.sep) >>\
os.linesep
輸出當前平臺使用的行終止符,win下為"\r\n",Linux下為"\n"
os.pathsep
輸出用於分割檔案路徑的字串 win下為;,Linux下為:
print(os.pathsep) >>;
os.name
輸出字串指示當前使用平臺。win->‘nt'; Linux->‘posix'
print(os.name) >>nt
os.system(“bash command”)
執行shell命令,直接顯示
os.environ
獲取系統環境變數
os.path.abspath(path)
返回path規範化的絕對路徑
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的目錄。其實就是os.path.split(path)的第一個元素
print(os.path.dirname('./log.py')) >>.
os.path.basename(path)
返回path最後的檔名。如果path以/或\結尾,那麼就會返回空值。即os.path.split(path)的第二個元素
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是絕對路徑,返回True
print(os.path.isabs('./log.py')) print(os.path.isabs('E:/pycharm/test/log')) >>False >>True
os.path.isfile(path)
如果path是一個存在的檔案,返回True。否則返回False
print(os.path.isfile('./log')) print(os.path.isfile('./log.py')) >>False >>True
os.path.isdir(path)
如果path是一個存在的目錄,則返回True。否則返回False,檔案也返回False。
print(os.path.isdir('./log.py')) print(os.path.isdir('./path_other')) >>False >>True
os.path.join(path1,path2,…)
將多個路徑組合後返回,第一個絕對路徑之前的引數將被忽略
print(os.path.join('./','path1','path2','path3')) print(os.path.join('./',os.getcwd(),'path3')) >>./path1\path2\path3 >>E:\pycharm\test\path3
os.path.getatime(path)
返回path所指向的檔案或者目錄的最後存取時間
print(os.path.getatime('./log.py')) >>1590469701.9787416
os.path.getmtime(path)
返回path所指向的檔案或者目錄的最後修改時間
print(os.path.getmtime('./log.py')) >>1590469701.6769156
到此這篇關於python os模組常用的29種方法使用詳解的文章就介紹到這了,更多相關python os模組內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!