os模塊是和系統進行交互的模塊python
makedirs()bash
os.makedirs('dir1/dir2')
mkdir(),當父文件夾存在時,能夠在父文件建立zi文件夾,需注意的是依然是隻建立一個文件夾,當在沒有此文件名的父文件中建立子文件夾時會報錯dom
os.mkdir('dir3/dir4') 運行結果: 報錯 os.mkdir('dir3') os.mkdir('dir3/dir4') 運行結果: 建立相應文件夾
須要注意的是不管哪一種刪除文件夾的操做都只會刪除空文件夾,含有文件的文件夾不會被刪除ui
removedirs()當不存在要刪除的文件夾名時會報錯spa
os.removedirs('dir3/dir4')
rmdir()當不存在要刪除的文件夾名時會報錯操作系統
os.rmdir('dir3/dir4')
listdir()列出指定目錄下的全部文件及子目錄,包括隱藏文件,以列表形式打印code
print(os.listdir("E:\python-file\August_new\8-20\day18")) 運行結果: ['1.內容回顧.py', '2.本週安排和今日內容.py', '3.random模塊.py', '4.時間模塊.py', '5.sys模塊.py', '6.os模塊.py', 'dir1', '__init__.py']
os.remove()刪除一個文件blog
os.rename("oldname","newname")重命名文件ip
os.stat()過去文件/目錄信息rem
print(os.stat("E:\python-file\August_new\8-20\day18")) print(os.stat("E:\python-file\August_new\8-20\姚佳琦.py")) 運行結果: os.stat_result(st_mode=16895, st_ino=7318349394508752, st_dev=3235112279, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1534766481, st_mtime=1534766481, st_ctime=1534748366) os.stat_result(st_mode=33206, st_ino=10133099161615310, st_dev=3235112279, st_nlink=1, st_uid=0, st_gid=0, st_size=3059, st_atime=1534764269, st_mtime=1534764269, st_ctime=1534751574)
統計文件的大小
os.path.getsize('路徑') # python的命令 dir 路徑 \C # 操做系統的命令
顯示當前路徑下的全部文件和文件夾
os.system('dir 路徑') # 使用python語言直接執行操做系統的命令 os.listdir('路徑') # 使用python語言的os模塊提供的方法 間接調用了操做系統命令
os.system("bash command")直行系統的命令沒有返回值
os.system('執行字符串數據類型的操做系統命令')
os.popen("bash command").read()直行命令獲取結果
os.popen('執行字符串數據類型的操做系統命令,並返回結果')
os.getcwd()獲取當前的工做目錄,也就是當前python腳本工做的目錄路徑
獲取當前執行命令的時候所在的目錄
os.chdir("dirname")改變當前腳本的工做目錄
修改當前執行命令的時候所在的目錄
目錄拼接,適合全部操做系統
file_lst = os.listdir('E:\python-file\August_new\8-20\day18') for path in file_lst: print(os.path.join('E:\python-file\August_new\8-20\day18', path)) 運行結果: E:\python-file\August_new\Scripts\python.exe E:/python-file/August_new/8-20/day18/6.os模塊.py E:\python-file\August_new\8-20\day18\1.內容回顧.py E:\python-file\August_new\8-20\day18\2.本週安排和今日內容.py E:\python-file\August_new\8-20\day18\3.random模塊.py E:\python-file\August_new\8-20\day18\4.時間模塊.py
os.path.abspath(path) 返回path規範化的絕對路徑 os.path.split(path) 將path分割成目錄和文件名二元組返回
os.path.dirname(path) 返回path的目錄。其實就是os.path.split(path)的第一個元素
os.path.basename(path) 返回path最後的文件名。如何path以/或\結尾,那麼就會返回空值。即os.path.split(path)的第二個元素
os.path.exists(path) 若是path存在,返回True;若是path不存在,返回False
os.path.isabs(path) 若是path是絕對路徑,返回True
os.path.isfile(path) 若是path是一個存在的文件,返回True。不然返回False
os.path.isdir(path) 若是path是一個存在的目錄,則返回True。不然返回False
os.path.join(path1[, path2[, ...]]) 將多個路徑組合後返回,第一個絕對路徑以前的參數將被忽略
os.path.getatime(path) 返回path所指向的文件或者目錄的最後訪問時間
os.path.getmtime(path) 返回path所指向的文件或者目錄的最後修改時間
os.path.getsize(path) 返回path的大小
os模塊: 定製了不少方法 間接的幫助你去調用操做系統的命令 得到結果 而後幫助你分析整理成咱們須要的數據類型的形態 同時也能夠os.popen/os.system直接取調用操做系統的命令 得到結果 可是 分析和整理的工做須要你本身作 用os模塊的方法自己可以完成的功能咱們就用定製好的方法就夠了 若是有一天 你發現os模塊定製好的功能解決不了咱們的問題了 而恰好操做系統的命令可以很好地幫助咱們解決問題 這個時候就用os.popen/os.system