使用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程序语言快速上手教程
Jul 18 Python
python中的错误处理
Apr 10 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
Jul 17 Python
Python3之读取连接过的网络并定位的方法
Apr 22 Python
python实现读Excel写入.txt的方法
Apr 29 Python
对python中两种列表元素去重函数性能的比较方法
Jun 29 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
Nov 29 Python
Python简单I/O操作示例
Mar 18 Python
python flask解析json数据不完整的解决方法
May 26 Python
Python3 pyecharts生成Html文件柱状图及折线图代码实例
Sep 29 Python
python批量生成条形码的示例
Oct 10 Python
python利用xlsxwriter模块 操作 Excel
Oct 14 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
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
我的论坛源代码(七)
2006/10/09 PHP
PHP 出现乱码和Sessions验证问题的解决方法!
2008/12/06 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
2011/05/09 PHP
php.ini-dist 和 php.ini-recommended 的区别介绍(方便开发与安全的朋友)
2012/07/01 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
2015/03/19 PHP
微信公众号OAuth2.0网页授权问题浅析
2017/01/21 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
javascript实现二叉树遍历的代码
2017/06/08 Javascript
Vue的Flux框架之Vuex状态管理器
2017/07/30 Javascript
javaScript字符串工具类StringUtils详解
2017/12/08 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
2020/07/28 Javascript
[01:03]DOTA2新的征程 你的脚印值得踏上
2014/08/13 DOTA
Python实现翻转数组功能示例
2018/01/12 Python
Python匿名函数及应用示例
2019/04/09 Python
Django 模型类(models.py)的定义详解
2019/07/19 Python
基于python3生成标签云代码解析
2020/02/18 Python
Python Flask上下文管理机制实例解析
2020/03/16 Python
解决jupyter notebook 出现In[*]的问题
2020/04/13 Python
ubuntu16.04升级Python3.5到Python3.7的方法步骤
2020/08/20 Python
python温度转换华氏温度实现代码
2020/12/06 Python
python 模块导入问题汇总
2021/02/01 Python
python 统计list中各个元素出现的次数的几种方法
2021/02/20 Python
CSS实现进度条和订单进度条的示例
2020/11/05 HTML / CSS
英格兰足协官方商店:England Store
2019/07/12 全球购物
关于赌博的检讨书
2014/01/24 职场文书
艺术教育实施方案
2014/05/03 职场文书
社区服务活动总结
2014/05/07 职场文书
乱世佳人观后感
2015/06/08 职场文书
暑期辅导班宣传单
2015/07/14 职场文书
python3+PyQt5+Qt Designer实现界面可视化
2021/06/10 Python