# 複製目錄
'''
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...