copyfileobj方法 將類文件對象fsrc的內容複製到類文件對象fdst 我一般的用法: 註:如果fsrc對象的當前文件位置不為0,那麼將只複製從當前文件位置到文件末尾的內容 copyfile方法 將名為src的文件的內容複製到名為dst的文件中,並返回dst。src和dst是作為字元串給出的 ...
import shutil #導入shutil模塊
copyfileobj方法
將類文件對象fsrc的內容複製到類文件對象fdst
shutil.copyfileobj(fsrc, fdst[, length])
我一般的用法:
shutil.copyfileobj(open('file','r'),open('file','w'))
註:如果fsrc對象的當前文件位置不為0,那麼將只複製從當前文件位置到文件末尾的內容
copyfile方法
將名為src的文件的內容複製到名為dst的文件中,並返回dst。src和dst是作為字元串給出的路徑名
shutil.copyfile(src,dst,*,follow_symlinks=True)
目標位置必須是可寫的。否則將引發OSError異常。如果dst已存在,它將被替換。
如果follow_symlinks為false,並且src是一個符號鏈接,那麼將創建一個新的符號鏈接,而不是複製文件src指向(這是python文檔里直接有道翻譯出來的,我也沒看懂是啥意思。學的還是太淺了········)
copymode方法
拷貝許可權,文件內容、所有者和組不受影響。
shutil.copymode(src,dst,*,follow_symlinks=True)
src和dst是作為字元串給出的路徑名
copystat方法
將許可權位、最後訪問時間、最後修改時間和標記從src複製到dst
shutil.copystat(src,dst,*,follow_symlinks=True)
copy方法
將文件src複製到文件或目錄dst
shutil.copy(src,dst,*,follow_symlinks=True)
src和dst都是字元串,一般用法如下:
shutil.copy(r'要複製的文件路徑(路徑+文件)',r'複製到的路徑')
註:要複製到的路徑是存在的才行,不存在該路徑會報錯。
copy2方法
與copy()方法相同,只是copy2()還試圖保存所有文件元數據。
shutil.copy2(src, dst, *, follow_symlinks=True)
copytree方法
遞歸的複製文件,該方法可以理解為複製電腦上某個文件夾以及文件夾內的東西到另一個文件夾
shutil.copytree(src,dst,ignore=None)
其中dst的路徑的最後一級必須是不存在的。如:D:\tools 這裡的tools這個文件夾必須是不存在的。由python創建。
這裡的ignore參數需要結合下列方式
shutil.ignore_patterns(*patterns)
我的理解就是需要忽視的文件的模式。用法如下:
shutil.copytree(src,dst,ignore=ignore_patterns('*.py'))
這裡的意思就是把 src目錄下的文件都複製到 dst 目錄下但是忽略掉 .py 文件。
註:這裡要先定義一個需要忽略的文件的模式
如:
1 a=shutil.ignore_patterns('*.py') 2 shutil.copytree(src,dst,ignore=a)
rmtree方法
shutil.rmtree(path)
遞歸的形式刪除 path 目錄,以及目錄下的所有文件
move方法
shutil.move(src,dst)
遞歸的形式移動 src 到 dst
如果dst是個現有的目錄 python 會將src移動到dst內 ,dst如果是個不存在的目錄 會調用os.ename 來改名字移動到目標位置。(應該是吧。我用的時候這個老報錯,移動是移動過去了,結果原文件還在,也是很奇怪。)
正在學習中······,學到新的東西會來修改或更新。