簡(jiǎn)單了解python shutil模塊原理及使用方法
shutil
--High-level file operations 高級(jí)的文件操作模塊
os模塊提供了對(duì)目錄或者文件的新建/刪除/查看文件屬性,還提供了對(duì)文件以及目錄的路徑操作。比如說:絕對(duì)路徑,父目錄…… 但是,os文件的操作還應(yīng)該包含移動(dòng) 復(fù)制 打包 壓縮 解壓等操作,這些os模塊都沒有提供。
而本章所講的shutil則就是對(duì)os中文件操作的補(bǔ)充。--移動(dòng) 復(fù)制 打包 壓縮 解壓
shutil 功能:
1 shutil.copyfileobj(fsrc,fds+[,length=16*1024]) #copy文件內(nèi)容到另一個(gè)文件,可以copy指定大小的內(nèi)容
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文件內(nèi)容,是不是感覺上面的文件復(fù)制很麻煩?還需要自己手動(dòng)用open函數(shù)打開文件,在這里就不需要了,事實(shí)上,copyfile調(diào)用了copyfileobj
import shutilshutil.copyfile(’1.txt’,’1_copy_file.txt’)
3 shutil.copymode(src,dst) #僅copy權(quán)限,不更改文件內(nèi)容,組和用戶。
準(zhǔn)備2個(gè)文件
-rwxr-xr-x 1 python python 66 4月 24 11:50 1.txt #權(quán)限是755-rwx-w--w- 1 python python 0 4月 24 11:50 2.txt #權(quán)限是722
import shutilshutil.copymode(’1.txt’,’2.txt’)
運(yùn)行結(jié)果后:
-rwxr-xr-x 1 python python 66 4月 24 11:50 1.txt #權(quán)限是755-rwxr-xr-x 1 python python 0 4月 24 11:50 2.txt #權(quán)限是755
注意:是根據(jù)第一個(gè)文件的權(quán)限來同步第二個(gè)文件權(quán)限,并且不支持三個(gè)參數(shù),例如:shutil.copymode(’1.txt’,’2.txt’,’3.txt’)
4 shutil.copystat(src,dst) #復(fù)制所有的狀態(tài)信息,包括權(quán)限,組,用戶,時(shí)間等
文以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis2. Python 忽略文件名編碼的方法3. python 基于Appium控制多設(shè)備并行執(zhí)行4. android studio實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器(無bug)5. Java Media Framework 基礎(chǔ)教程6. 解決vue頁面刷新,數(shù)據(jù)丟失的問題7. python 實(shí)現(xiàn)圍棋游戲(純tkinter gui)8. python 讀txt文件,按‘,’分割每行數(shù)據(jù)操作9. 在Mac中配置Python虛擬環(huán)境過程解析10. Python趣味挑戰(zhàn)之用pygame實(shí)現(xiàn)簡(jiǎn)單的金幣旋轉(zhuǎn)效果
