使用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 相关文章推荐
Django框架实现逆向解析url的方法
Jul 04 Python
python交互界面的退出方法
Feb 16 Python
如何使用Python标准库进行性能测试
Jun 25 Python
python列表推导式操作解析
Nov 26 Python
python实现大战外星人小游戏实例代码
Dec 26 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
Jan 10 Python
python_mask_array的用法
Feb 18 Python
pycharm中导入模块错误时提示Try to run this command from the system terminal
Mar 26 Python
Python3之外部文件调用Django程序操作model等文件实现方式
Apr 07 Python
python实现扫雷小游戏
Apr 24 Python
浅谈Python 参数与变量
Jun 20 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 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
一个高ai的分页函数和一个url函数
2006/10/09 PHP
深入解析PHP的引用计数机制
2013/06/14 PHP
PHP数字和字符串ID互转函数(类似优酷ID)
2014/06/30 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
浅谈php中curl、fsockopen的应用
2016/12/10 PHP
PHP面向对象程序设计重载(overloading)操作详解
2019/06/13 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
JavaScript 字符串乘法
2009/08/20 Javascript
jQuery实现切换页面过渡动画效果
2015/10/29 Javascript
Underscore源码分析
2015/12/30 Javascript
jQuery图片瀑布流的简单实现代码
2017/03/15 Javascript
基于vue实现多引擎搜索及关键字提示
2017/03/16 Javascript
AngularJs 禁止模板缓存的方法
2017/11/28 Javascript
微信小程序实现打卡日历功能
2020/09/21 Javascript
用npm-run实现自动化任务的方法示例
2019/01/14 Javascript
解决vue 表格table列求和的问题
2019/11/06 Javascript
使用Vue实现一个树组件的示例
2020/11/06 Javascript
删除目录下相同文件的python代码(逐级优化)
2012/05/25 Python
Django中实现一个高性能计数器(Counter)实例
2014/07/09 Python
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
Python的GUI框架PySide的安装配置教程
2016/02/16 Python
关于python列表增加元素的三种操作方法
2018/08/22 Python
澳大利亚家具和家居用品购物网站:Zanui
2018/12/29 全球购物
Sisley法国希思黎美国官方网站:享誉全球的奢华植物美容品牌
2020/06/27 全球购物
C#中类(class)与结构(struct)的异同
2013/11/03 面试题
本科毕业生自我鉴定
2013/11/02 职场文书
学校食堂采购员岗位职责
2013/12/05 职场文书
激励口号大全
2014/06/17 职场文书
贯彻落实“八项规定”思想汇报
2014/09/13 职场文书
处级领导班子全部召开专题民主生活会情况汇报
2014/09/27 职场文书
2015秋季幼儿园开学通知
2015/07/16 职场文书
选择比努力更重要?这是长期以来对“努力”的最大误解
2019/07/12 职场文书
php 获取音视频时长,PHP 利用getid3 获取音频文件时长等数据
2021/04/01 PHP
世界各国短波电台对东亚播送时间频率表(SW)
2021/06/28 无线电
pytorch实现加载保存查看checkpoint文件
2022/07/15 Python