使用Python实现从各个子文件夹中复制指定文件的方法


Posted in Python onOctober 25, 2018

之前用来整理图片的小程序,拿来备忘,算是使用Python复制文件的一个例子。

# -*- coding: utf-8 -*-
#程序用来拷贝文件并输出图片采集日期等其他信息到Excel中
#文件夹结构:
#2016_07_07
#  -Data_07_07_001
#   -Random1
#    -image001_co.pgm
#    -image001_c1.pgm
#    -image002_co.pgm
#    -image002_c1.pgm
#    -……
#   -Random2
#   -……
#  -Data_07_07_002
#  -Data_07_07_003
#  -……
#所以我们只是拷贝每个子文件夹中,Random1文件夹中的_co.pgm数据
 
import os
import re
import xlwt
 
hang=0
#递归复制文件夹内的文件
def copyFiles(sourceDir,targetDir): 
 global hang   #全局变量,记录即将写入Excel的行号
 worksheet.write(hang, 0, label = sourceDir)
 for file in os.listdir(sourceDir):
  frames = '('+file[file.find('_')+1:]+')' #待写入Excel中的数据
  sourceDir1 = os.path.join(sourceDir,file) #路径名拼接
  targetDir1 = os.path.join(targetDir,file)
  for file in os.listdir(sourceDir1):
   sourceDir2 = os.path.join(sourceDir1,file) 
   #忽略某些特定的子文件夹
   if sourceDir2.find("Random1")>0: 
   #列出源目录文件和文件夹
    count= -1
    for file in os.listdir(sourceDir2): 
    #拼接完整路径
     if re.search('_c0.pgm',file):
      count+=1
      sourceFile = os.path.join(sourceDir2,file) 
      targetFile = os.path.join(targetDir1,file) 
 
      if os.path.isfile(sourceFile):
       if not os.path.exists(targetDir1):
        os.makedirs(targetDir1)
       if not os.path.exists(targetFile) or (os.path.exists(targetFile) and (os.path.getsize(targetFile) != os.path.getsize(sourceFile))):
        open(targetFile, "wb").write(open(sourceFile, "rb").read())
        print targetFile+" copy succeeded"
    frames = '0-'+str(count)+frames
    worksheet.write(hang, 1, label = 1)
    worksheet.write(hang, 2, label = frames)
    hang+=1
    print frames
 
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('My Worksheet')
copyFiles("F:/2016_07_07","F:/07_07")
workbook.save('auto_book.xls')
print 'end'

以上这篇使用Python实现从各个子文件夹中复制指定文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的类学习笔记
Sep 23 Python
Python解析json文件相关知识学习
Mar 01 Python
python在Windows下安装setuptools(easy_install工具)步骤详解
Jul 01 Python
Python中.py文件打包成exe可执行文件详解
Mar 22 Python
Python logging管理不同级别log打印和存储实例
Jan 19 Python
windows下安装Python的XlsxWriter模块方法
May 03 Python
python 使用cx-freeze打包程序的实现
Mar 14 Python
利用Python将图片中扭曲矩形的复原
Sep 07 Python
python 写一个性能测试工具(一)
Oct 24 Python
关于python3.9安装wordcloud出错的问题及解决办法
Nov 02 Python
Django利用AJAX技术实现博文实时搜索
May 06 Python
python实现学员管理系统(面向对象版)
Jun 05 Python
python 实现对文件夹中的图像连续重命名方法
Oct 25 #Python
python微信公众号之关注公众号自动回复
Oct 25 #Python
python 文件查找及内容匹配方法
Oct 25 #Python
利用python循环创建多个文件的方法
Oct 25 #Python
用python生成1000个txt文件的方法
Oct 25 #Python
Python爬虫之正则表达式的使用教程详解
Oct 25 #Python
python实现键盘控制鼠标移动
Nov 27 #Python
You might like
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
php数据库连接时容易出错的特殊符号问题
2010/09/01 PHP
php结合ACCESS的跨库查询功能
2015/06/12 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
javascript写的日历类(基于pj)
2010/12/28 Javascript
文本框回车提交与禁止提交示例
2013/09/27 Javascript
jQuery判断checkbox(复选框)是否被选中以及全选、反选实现代码
2014/02/21 Javascript
JavaScript中的立即执行函数表达式介绍
2015/03/15 Javascript
jQuery实现的漂亮表单效果代码
2015/08/18 Javascript
Webpack 实现 Node.js 代码热替换
2015/10/22 Javascript
JavaScript中的原始值和复杂值
2016/01/07 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
浅谈Node.js:Buffer模块
2016/12/05 Javascript
原生js实现吸顶效果
2017/03/13 Javascript
jQuery事件对象的属性和方法详解
2017/09/09 jQuery
Vue-cli3.X使用px2 rem遇到的问题及解决方法
2019/08/08 Javascript
JavaScript, select标签元素左右移动功能实现
2020/05/14 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
Python性能优化技巧
2015/03/09 Python
深入浅析Python字符编码
2015/11/12 Python
Python数据类型中的“冒号“[::]——分片与步长操作示例
2018/01/24 Python
python+mysql实现学生信息查询系统
2019/02/21 Python
Python实现直方图均衡基本原理解析
2019/08/08 Python
python使用PIL和matplotlib获取图片像素点并合并解析
2019/09/10 Python
Python 获取项目根路径的代码
2019/09/27 Python
使用python无账号无限制获取企查查信息的实例代码
2020/04/17 Python
使用python求斐波那契数列中第n个数的值示例代码
2020/07/26 Python
雅萌 (YA-MAN) :日本美容家电领域的龙头企业
2017/05/12 全球购物
求职信内容考虑哪几点
2013/10/05 职场文书
结婚典礼证婚词
2014/01/08 职场文书
2014年党委工作总结
2014/11/22 职场文书
行政司机岗位职责
2015/04/10 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
2015年小学数学教师工作总结
2015/05/20 职场文书
Python打包为exe详细教程
2021/05/18 Python