福建省亿力电力建设有限公司网站,网页设计html代码大全动物,个人手机网站大全,推广软件本文实例讲述了Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法。分享给大家供大家参考。具体如下#xff1a;这个东东本来是做来给公司数据同步用的#xff1a;新服务器还没正式启用#xff0c;旧的服务器还在使用#xff0c;每天都有大量图片传到旧服务器上…本文实例讲述了Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法。分享给大家供大家参考。具体如下这个东东本来是做来给公司数据同步用的新服务器还没正式启用旧的服务器还在使用每天都有大量图片传到旧服务器上面为了避免备份全部图片所以写了这么个工具。1. 运行效果如下图所示2. Python代码如下复制代码 代码如下:# codinggbkCreated on 2011-1-7author: HHimport os,ConfigParser递归列出某目录下的文件放入List中def listDir (fileList,path):filesos.listdir(path)for i in files:file_pathpath\\iif os.path.isfile(file_path):fileList.append(file_path)for i in files:file_pathpath\\iif os.path.isdir(file_path):#fileList.append(file_path)listDir(fileList,file_path)return fileList将List中内容写入文件def writeListToFile(list,path):strs\n.join(list)fopen(path,wb)f.write(strs)f.close()读入文件内容并放入List中def readFileToList(path):lists[]fopen(path,rb)linesf.readlines()for line in lines:lists.append(line.strip())f.close()return lists比较文件--以Set方式def compList(list1,list2):return list(set(list1)-set(list2))复制List中文件到指定位置def copyFiles(fileList,targetDir):for file in fileList:targetPathos.path.join(targetDir,os.path.dirname(file))targetFileos.path.join(targetDir,file)if not os.path.exists(targetPath):os.makedirs(targetPath)if not os.path.exists(targetFile) or (os.path.exists(targetFile)and os.path.getsize(targetFile)!os.path.getsize(file)):print 正在复制文件fileopen(targetFile,wb).write(open(file,rb).read())else:print 文件已存在不复制if __name__ __main__:path.svn#获取源目录txtFile1.txt#目录结构输出的目的文件tdircpfile#复制到的目标目录cfFileconfig.ini;#配置文件文件名fileList[]#读取配置文件if(os.path.exists(cfFile)):cfConfigParser.ConfigParser()cf.read(cfFile)pathcf.get(main, sourceDir)txtFilecf.get(main,txtFile)tdircf.get(main,targetDir)else:print 配置文件不存在raw_input(\n按 回车键 退出\n)exit()if(os.path.exists(txtFile)):#如果导出的文件存在就读取后比较list1readFileToList(txtFile)print 正在读取文件列表……fileListlistDir (fileList,path)print 正在比较文件……list_rescompList(fileList,list1)if len(list_res)0:print 以下是原目录中不存在的文件\nprint \n.join(list_res)print \n共计文件数str(len(list_res))\nif raw_input(\n是否复制文件(y/n))!n:copyFiles(list_res,tdir)else:print 没有不相同的文件else:#如果导出的文件不存在则导出文件print 正在读取文件列表……fileListlistDir (fileList,path)writeListToFile(fileList,txtFile)print 已保存到文件txtFileraw_input(\n按 回车键 退出\n)3. 配置文件名config.ini如下复制代码 代码如下:#配置文件名config.ini[main]sourceDirwwwroottxtFile1.txttargetDircp希望本文所述对大家的Python程序设计有所帮助。小编推荐欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术请 点击这里注册账号公开课频道价值万元IT培训教程免费学让您少走弯路、事半功倍好工作升职加薪免责声明本站系公益性非盈利IT技术普及网本文由投稿者转载自互联网的公开文章文末均已注明出处其内容和图片版权归原网站或作者所有文中所述不代表本站观点若有无意侵权或转载不当之处请从网站右下角联系我们处理谢谢合作