如下所示:
import os
import time
from collections import deque
\"\"\"
利用递归实现目录的遍历
@para 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(absourcePath,abstargetPath)
#是文件就进行复制
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:\\培训资料_备份\"
getDirAndCopyFile(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利用递归实现文件的复制方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
继续阅读与本文标签相同的文章
-
谷歌发布首款装有雷达的智能手机
2026-05-18栏目: 教程
-
Win10启用使用Sandbox
2026-05-18栏目: 教程
-
草图大师怎么垂直旋转?su软件垂直旋转模型的方法
2026-05-18栏目: 教程
-
数字技术让“诗和远方”融为一体
2026-05-18栏目: 教程
-
“成人网站”免费让人上钩,其背后有什么不为人知的猫腻,网友:不敢惹
2026-05-18栏目: 教程
