python 拷贝特定后缀名文件,并保留原始目录结构的实例


Posted in Python onApril 27, 2018

如下所示:

#!/usr/bin/python
# -*- coding: UTF-8 -*- 
import os
import shutil
def cp_tree_ext(exts,src,dest):
  """
  Rebuild the director tree like src below dest and copy all files like XXX.exts to dest 
  exts:exetens seperate by blank like "jpg png gif"
  """
  fp={}
  extss=exts.lower().split()
  for dn,dns,fns in os.walk(src):
    for fl in fns:
      if os.path.splitext(fl.lower())[1][1:] in extss:
        if dn not in fp.keys():
          fp[dn]=[]
        fp[dn].append(fl)
  for k,v in fp.items():
      relativepath=k[len(src)+1:]
      newpath=os.path.join(dest,relativepath)
      for f in v:
        oldfile=os.path.join(k,f)
        print("拷贝 ["+oldfile+"] 至 ["+newpath+"]")
        if not os.path.exists(newpath):
          os.makedirs(newpath)
        shutil.copy(oldfile,newpath)
#用法如下:
#
#cp_tree_ext(exts,src,dest)
#
#exts:以空格分隔的字符串,可多个拓展名,如"bat txt"
#src:原目录
#dest:目标目录,如果不存在,则建立
cp_tree_ext('doc docx','/home/lincoln/python/copy/source','/home/lincoln/python/copy/target')

只是段代码,直接调用cp_tree_ext(exts,src,dest) 方法即可。

以上这篇python 拷贝特定后缀名文件,并保留原始目录结构的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
wxpython中自定义事件的实现与使用方法分析
Jul 21 Python
Python实现将HTML转换成doc格式文件的方法示例
Nov 20 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
Python实现的个人所得税计算器示例
Jun 01 Python
pandas.read_csv参数详解(小结)
Jun 21 Python
解决python明明pip安装成功却找不到包的问题
Aug 28 Python
Python对接 xray 和微信实现自动告警
Sep 17 Python
使用Keras加载含有自定义层或函数的模型操作
Jun 10 Python
解决运行django程序出错问题 'str'object has no attribute'_meta'
Jul 15 Python
详解Python 最短匹配模式
Jul 29 Python
Python爬虫之Selenium库的使用方法
Jan 03 Python
使用Django实现商城验证码模块的方法
Jun 01 Python
python中subprocess批量执行linux命令
Apr 27 #Python
python复制文件到指定目录的实例
Apr 27 #Python
Python多进程multiprocessing.Pool类详解
Apr 27 #Python
python获取程序执行文件路径的方法(推荐)
Apr 26 #Python
python中的文件打开与关闭操作命令介绍
Apr 26 #Python
python3获取当前文件的上一级目录实例
Apr 26 #Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
Apr 26 #Python
You might like
PHP iconv 解决utf-8和gb2312编码转换问题
2010/04/12 PHP
php如何控制用户对图片的访问 PHP禁止图片盗链
2016/03/25 PHP
Smarty日期时间操作方法示例
2016/11/15 PHP
PHP PDOStatement::rowCount讲解
2019/02/01 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
JavaScript 编写匿名函数的几种方法
2010/02/21 Javascript
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
Javascript学习笔记 delete运算符
2011/09/13 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
获取下拉列表框的值是数组,split,$.inArray示例
2013/11/13 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
JS根据生日算年龄的方法
2015/05/05 Javascript
jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
2016/01/19 Javascript
Express与NodeJs创建服务器的两种方法
2017/02/06 NodeJs
js实现截图保存图片功能的代码示例
2017/02/16 Javascript
vue数据双向绑定原理解析(get & set)
2017/03/08 Javascript
Angular4 中常用的指令入门总结
2017/06/12 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
label+input实现按钮开关切换效果的实例
2017/08/16 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
2018/09/04 Javascript
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
[40:12]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python发布模块的步骤分享
2014/02/21 Python
Python带动态参数功能的sqlite工具类
2018/05/26 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
2018/10/31 Python
在ubuntu16.04中将python3设置为默认的命令写法
2018/10/31 Python
python 画出使用分类器得到的决策边界
2019/08/21 Python
python分布式计算dispy的使用详解
2019/12/22 Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
2020/05/26 Python
使用opencv中匹配点对的坐标提取方式
2020/06/04 Python
python实现梯度下降算法的实例详解
2020/08/17 Python
CSS3 box-sizing属性
2009/04/17 HTML / CSS
Java Servlet的主要功能和作用是什么
2014/02/14 面试题
2014党员自我评议表范文
2014/09/20 职场文书
2014单位领导班子四风对照检查材料思想汇报
2014/09/25 职场文书