Python利用递归实现文件的复制方法
如下所示:
importos
importtime
fromcollectionsimportdeque
"""
利用递归实现目录的遍历
@parasourcePath:原文件目录
@paratargetPath:目标文件目录
"""
defgetDirAndCopyFile(sourcePath,targetPath):
ifnotos.path.exists(sourcePath):
return
ifnotos.path.exists(targetPath):
os.makedirs(targetPath)
#遍历文件夹
forfileNameinos.listdir(sourcePath):
#拼接原文件或者文件夹的绝对路径
absourcePath=os.path.join(sourcePath,fileName)
#拼接目标文件或者文件加的绝对路径
abstargetPath=os.path.join(targetPath,fileName)
#判断原文件的绝对路径是目录还是文件
ifos.path.isdir(absourcePath):
#是目录就创建相应的目标目录
os.makedirs(abstargetPath)
#递归调用getDirAndCopyFile()函数
getDirAndCopyFile(absourcePath,abstargetPath)
#是文件就进行复制
ifos.path.isfile(absourcePath):
rbf=open(absourcePath,"rb")
wbf=open(abstargetPath,"wb")
whileTrue:
content=rbf.readline(1024*1024)
iflen(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利用递归实现文件的复制方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语