zoukankan      html  css  js  c++  java
  • python复制文件夹(包含os库多种函数的)

    import os#调出os库
    #文件的复制
    def mycopy(file1,file2):#定义一个mycopy函数用于复制文件
    
    	f1=open(file1,"rb")#以读取模式打开file1
    	f2=open(file2,"wb")#以清空写模式打开file2
    
    
    	content = f1.readline()#将第一行数据赋给content
    	while len(content)>0:#如果读取到的数据长度不为0则循环执行
    		f2.write(content)#在file2里写下content
    		content=f1.readline()#再读一行赋给content
    
    	f1.close()#关闭file1
    	f2.close()
    
    
    
    #自定义目录复制函数
    def copydd(dir1,dir2):#定义复制文件夹函数coppydd
    	#获取被复制目录中的所有文件信息
    	dlist = os.listdir(dir1)#以列表模式赋给dlist
    	#创建新目录
    	os.mkdir(dir2)#创建新文件夹dir2
    	#遍历所有文件并执行文件复制
    	for f in dlist:#让f在dlist中遍历
    		#为遍历的文件添加目录路径
    		file1 = os.path.join(dir1,f)#将f遍历出的文件名给file1(dir1+f即路径+文件名)
    		file2 = os.path.join(dir2,f)#同样也给file2
    		#判断是否是文件
    		if os.path.isfile(file1):#判断是否为文件的方式为os库中的函数 os.path.isfile(文件名)
    			mycopy(file1,file2)#调用自定义的mycopy函数复制文件	
    		if os.path.isdir(file1):#如果是文件夹的话   那就调用自身(自身就是复制文件夹嘛)e而处理的不是dir1,dir2,是file1,file2,因为此时文件夹同文件一起被f遍历,此处判断的就是f遍历出的是文件还是文件夹
    			coppydd(file1,file2)	#调用自身   递归思想
    	
    #测试
    copydd("./aa","./bb")#当前文件夹中的aa文件夹复制到bb文件夹   没有会自动创建
    
  • 相关阅读:
    Android中的数据结构
    Android之makefile
    AndroidMainfest详解
    源码分析之AsyncTask
    源码分析之AsyncTask
    优化apk的odex处理
    arguments简单函数 求整数递加和
    js提取DOM属性和设置DOM属性值
    var定义变量的使用细节
    关于ID命名 一个页面唯一
  • 原文地址:https://www.cnblogs.com/hzshisan/p/12571105.html
Copyright © 2011-2022 走看看