如下所示:
import os
import time
from collections import deque
"""利用遞迴實現目錄的遍歷
@p程式設計客棧ara sourcepath:原檔案目錄
@para targetpath:目標檔案目錄
"""def getdirandcopyfile(sourcepath,targetpath):
if not os.path.exists(sourcepath):
return
if not os.path.exists(targetpath):
os.makedirs(targetpath)
#遍歷資料夾
for filename in os.listdir(sourcepath):
#拼接原檔案或者資料夾的絕對路徑
absourcepath = os.path.join(sourcepath, filename)
#拼接目標檔案或者檔案加的絕對路徑
abstargetpath = os.path.join(targetpath, filename)
#判斷原檔案的絕對路徑是目錄還是檔案
if os.path.isdir(absourcepath):
#是目錄就建立相應的目標目錄
os.makedirs(abstargetpath)
#遞迴呼叫getdirandcopyfile()函式
getdirandcopyfile(abs
#是檔案就進行複製
if os.path.isfile(absourcepath):
rbf = open(absourcepath,"rb")
wbf = open(abstargetpath,"wb")
程式設計客棧 while true:
content = rbf.readline(1024*1024)
if len(content)==0:
break
wbf.write(content)
wbf.flush()
rbf.close()
wbf.close()
if __name__ == '__main__':
starttime = time.clock()
sourcepath = r"h:\培訓資料"
targetpath = r"h:\培訓資料_備份"
getdirandcoxbrlkjumpyfile(sourcepath,targetpath)
#時間是用來計算複製總共消耗了多少時間
endtime = time.clock()
time_mi = endtime // 60
time_s = endtime // 1 % 60
time_ms = ((endtime * 100) // 1) % 100
print("總用時:%02.0f:%02.0f:%2.0f" % (time_mi, time_s, time_ms))
本文標題: python利用遞迴實現檔案的複製方法
本文位址: /jiaoben/python/242850.html
Python利用遞迴實現檔案的複製
import os import time from collections import deque 利用遞迴實現目錄的遍歷 para sourcepath 原檔案目錄 para targetpath 目標檔案目錄 def getdirandcopyfile sourcepath,targetpa...
python利用棧實現迷宮(非遞迴)
1 建立迷宮地圖,可以用二維陣列表示,01分別表示牆和路 2 設定迷宮的起點和終點 3 將起點push進儲存路徑的棧。從棧頂元素開始,搜尋其上下左右格仔,如果可達,則將搜尋到的可達的格仔push到當前路徑中 並標記該格仔已經遍歷過 如果乙個格仔周圍的四個格仔均不可走,則將該格仔從路徑中pop 並標記...
利用python和遞迴實現趕鴨子問題
發現網上沒幾個用python實現這個問題的回答 至少我沒找到,可能是我搜尋功力不行 所以我就寫出來給大夥瞧瞧,不足之處請多多指教!乙個人趕著鴨子去每個村莊賣,每經過乙個村子賣去所趕鴨子的一半又乙隻。這樣他經過了七個村子後還剩兩隻鴨子,問他出發時共趕多少只鴨子?經過每個村子賣出多少只鴨子?要求 1 使...