osremove-刪除文件
os.remove() 方法用于刪除指定路徑的文件。
如果指定的路徑是一個目錄,將拋出異常。
使用示例
import os p = r'D:\soft\1.jpg' os.remove(p)
如果刪除的是一個文件,文件可以是圖片,文本,excel等(注意是文件不是文件夾)
如果不存在此文件會拋出異常FileNotFoundError: [WinError 2] 系統(tǒng)找不到指定的文件
當我們想刪除一個文件夾的時候,刪除整個logs文件
此時會拋出異常?PermissionError: [WinError 5] 拒絕訪問 os.remove()只能刪除一個文件,并且文件路徑要存在,刪文件夾會報錯。
os.removedirs() 遞歸刪除目錄
os.removedirs() 方法用于遞歸刪除目錄。但目錄必須是空的。
import os p = r'D:\soft\logs' os.removedirs(p)
如果目錄不為空,會拋出異常OSError: [WinError 145] 目錄不是空的,所以這個功能比較雞肋,我們一般希望能直接刪除整個文件夾以及子目錄
shutil.rmtree() 刪除這個文件夾目錄
shutil.rmtree() 遞歸刪除一個目錄以及目錄內(nèi)的所有內(nèi)容
import shutil p = r'D:\soft\logs' shutil.rmtree(p)
如果文件路徑不存在會拋出異常:FileNotFoundError: [WinError 3] 系統(tǒng)找不到指定的路徑。
shutil模塊其它方法
shutil.copyfile( src, dst) #從源src復制到dst中去。 如果當前的dst已存在的話就會被覆蓋掉 shutil.move( src, dst) #移動文件或重命名 shutil.copymode( src, dst) #只是會復制其權(quán)限其他的東西是不會被復制的 shutil.copystat( src, dst) #復制權(quán)限、最后訪問時間、最后修改時間 shutil.copy( src, dst) #復制一個文件到一個文件或一個目錄 shutil.copy2( src, dst) #在copy上的基礎(chǔ)上再復制文件最后訪問時間與修改時間也復制過來了,類似于cp –p的東西 shutil.copy2( src, dst) #如果兩個位置的文件系統(tǒng)是一樣的話相當于是rename操作,只是改名;如果是不在相同的文件系統(tǒng)的話就是做move操作 shutil.copytree( olddir, newdir, True/Flase) #把olddir拷貝一份newdir,如果第3個參數(shù)是True,則復制目錄時將保持文件夾下的符號連接,如果第3個參數(shù)是False,則將在復制的目錄下生成物理副本來替代符號連接 shutil.rmtree( src ) #遞歸刪除一個目錄以及目錄內(nèi)的所有內(nèi)容
版權(quán)聲明:文章圖片資源來源于網(wǎng)絡(luò),如有侵權(quán),請留言刪除!!!
評論