簡單了解python shutil模塊原理及使用方法
shutil
--High-level file operations 高級的文件操作模塊
os模塊提供了對目錄或者文件的新建/刪除/查看文件屬性,還提供了對文件以及目錄的路徑操作。比如說:絕對路徑,父目錄…… 但是,os文件的操作還應該包含移動 復制 打包 壓縮 解壓等操作,這些os模塊都沒有提供。
而本章所講的shutil則就是對os中文件操作的補充。--移動 復制 打包 壓縮 解壓
shutil 功能:
1 shutil.copyfileobj(fsrc,fds+[,length=16*1024]) #copy文件內容到另一個文件,可以copy指定大小的內容
import shutilf1=open(’1.txt’,’r’)f2=open(’1_copy.txt’,’w+’)shutil.copyfileobj(f1,f2,length=16*1024)
2 shutil.copyfile(src,dst) #copy文件內容,是不是感覺上面的文件復制很麻煩?還需要自己手動用open函數打開文件,在這里就不需要了,事實上,copyfile調用了copyfileobj
import shutilshutil.copyfile(’1.txt’,’1_copy_file.txt’)
3 shutil.copymode(src,dst) #僅copy權限,不更改文件內容,組和用戶。
準備2個文件
-rwxr-xr-x 1 python python 66 4月 24 11:50 1.txt #權限是755-rwx-w--w- 1 python python 0 4月 24 11:50 2.txt #權限是722
import shutilshutil.copymode(’1.txt’,’2.txt’)
運行結果后:
-rwxr-xr-x 1 python python 66 4月 24 11:50 1.txt #權限是755-rwxr-xr-x 1 python python 0 4月 24 11:50 2.txt #權限是755
注意:是根據第一個文件的權限來同步第二個文件權限,并且不支持三個參數,例如:shutil.copymode(’1.txt’,’2.txt’,’3.txt’)
4 shutil.copystat(src,dst) #復制所有的狀態信息,包括權限,組,用戶,時間等
文以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章: