python複製目錄

2021-08-17 20:03:52 字數 1406 閱讀 5319

# 複製目錄

'''

1.定義乙個函式 ,引數1:指定需要複製的目錄, 引數2: 目標目錄位置

2.判斷指定目錄是否存在-- 不存在-- 終止

3.判斷目標目錄是否存在,---不存在---建立

4.遍歷目錄

5.如果是目錄---繼續遍歷且需要在目標目錄中建立新的

6.如果是檔案,---複製--讀寫檔案

'''

import os

def copydir(sourcepath,targetpath):

if not os.path.exists(sourcepath):

return

if not os.path.exists(targetpath):

os.makedirs(targetpath)

for filename in os.listdir(sourcepath):

# 源路徑

abspathsource = os.path.join(sourcepath,filename)

#       目標路徑

abspathtarget = os.path.join(targetpath,filename)

if os.path.isdir(abspathsource):

os.makedirs(abspathtarget)

copydir(abspathsource,abspathtarget)

if os.path.isfile(abspathsource):

#            當目標檔案不存在   或者  檔案存在且原始檔與目標檔案大小不一樣 時才複製

if (not os.path.exists(abspathtarget)) or (os.path.exists(abspathtarget) and os.path.getsize(abspathsource) != os.path.getsize(abspathtarget)):

rf = open(abspathsource,"rb")

wf = open(abspathtarget,"wb")

while true:

content = rf.read(1024)

if len(content) == 0:

break

wf.write(content)

wf.flush()

wf.close()

rf.close()

if __name__ == '__main__':

sourcepath = r"i:\sz1704\day08"

targetpath = r"i:\sz1704\day08副本"

copydir(sourcepath,targetpath)

Python 複製檔案和目錄

無非就是乙個讀取檔案和寫入檔案的操作 def copy file src path,target path 如果檔案過大建議使用ab進行寫入,一次讀取1024個位元組 fp1 open src path,rb fp2 open file path2,wb fp2 open target path,a...

python如何實現複製目錄到指定目錄

儲存下面 為乙個檔案直接執行 import os import time copyfilecounts 0 def copyfiles sourcedir,targetdir global copyfilecounts print sourcedir print u s 當前處理資料夾 s已處理 s...

實現目錄拷貝 複製目錄 複製檔案

include include include include include include include ifndef debug define pdebug fmt,args.do while 0 else define pdebug fmt,args.printf s d fmt,func...