python 实现文件的递归拷贝实现代码


Posted in Python onAugust 02, 2012

所以就想把这些照片翻着看一遍,可是拷出来的照片手机

里是按时间自动分文件夹的,一个一个文件夹拷很是麻烦,于是打算写个python小脚本来完成这个工作(扯这么多,终于

到主题了,?澹

python 实现文件的递归拷贝实现代码

这是待拷贝的文件夹根目录,每个子目录下都有若干照片。

废话少说,上代码:

# -*- coding: utf-8 -*- 
#!/usr/bin/python 
#Filename:copyfile.py 
import os,shutil 
def mycopy(srcpath,dstpath): 
if not os.path.exists(srcpath): 
print "srcpath not exist!" 
if not os.path.exists(dstpath): 
print "dstpath not exist!" 
for root,dirs,files in os.walk(srcpath,True): 
for eachfile in files: 
shutil.copy(os.path.join(root,eachfile),dstpath) 
srcpath='e:\\pic' 
dstpath='f:\\pictotal' 
mycopy(srcpath,dstpath)

运行这个脚本,去f盘看看:

python 实现文件的递归拷贝实现代码

照片都拷贝了过来,果然有很多照片(底下还有很多,没截完)
代码没有什么难懂的,主要是os.walk()函数,这个函数返回指定路径的三元组(起始路径,起始路径下的目录,起始路径下不带路径名的文件名列表)
它直接可以递归遍历到指定目录下的所有目录及文件名,比较好用。
也可以用os.listdir(dirname):函数来实现,listdir函数列出dirname下的目录和文件,然后通过一个判断:若是文件,则拷贝;若是目录,则继续递归
遍历,显然没有walk()函数用起来方便。不过不知道walk()函数内部是怎么实现的,若是直接将根目录下的所有文件存在list中性能上可能不太好,
后面可以用listdir()对比测一下。

可以看出,python仅需短短几行的代码就完成了这个工作,还是很方便的。若用C++来实现代码就比这个长了。
可见,语言无所谓高低,能高效方便实现目标就好,不是吗?

Python 相关文章推荐
python实现定制交互式命令行的方法
Jul 03 Python
Pyhton中防止SQL注入的方法
Feb 05 Python
Python 批量合并多个txt文件的实例讲解
May 08 Python
Python运维之获取系统CPU信息的实现方法
Jun 11 Python
Python+PyQT5的子线程更新UI界面的实例
Jun 14 Python
numpy求平均值的维度设定的例子
Aug 24 Python
在Python中使用MySQL--PyMySQL的基本使用方法
Nov 19 Python
pytorch进行上采样的种类实例
Feb 18 Python
python 元组的使用方法
Jun 09 Python
Python基于time模块表示时间常用方法
Jun 18 Python
Python 批量下载阴阳师网站壁纸
May 19 Python
浅谈Python协程asyncio
Jun 20 Python
python实现划词翻译
Apr 23 #Python
Python程序语言快速上手教程
Jul 18 #Python
python 图片验证码代码分享
Jul 04 #Python
Python查询Mysql时返回字典结构的代码
Jun 18 #Python
python 实现堆排序算法代码
Jun 05 #Python
python 实现归并排序算法
Jun 05 #Python
python 实现插入排序算法
Jun 05 #Python
You might like
php empty函数 使用说明
2009/08/10 PHP
php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
2011/11/10 PHP
Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作
2017/06/30 PHP
Javascript Math ceil()、floor()、round()三个函数的区别
2010/03/09 Javascript
XMLHTTPRequest的属性和方法简介
2010/11/23 Javascript
如何确保JavaScript的执行顺序 之jQuery.html并非万能钥匙
2011/03/03 Javascript
非常好用的JsonToString 方法 简单实例
2013/07/18 Javascript
jquery验证手机号码、邮箱格式是否正确示例代码
2013/07/28 Javascript
jQuery实现表单提交时判断的方法
2014/12/13 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
2016/05/05 Javascript
基于JavaScript代码实现自动生成表格
2016/06/15 Javascript
一篇文章让你彻底弄懂JS的事件冒泡和事件捕获
2017/08/14 Javascript
详解react-native WebView 返回处理(非回调方法可解决)
2018/02/27 Javascript
ES6模板字符串和标签模板的应用实例分析
2019/06/25 Javascript
jQuery实现简单QQ聊天框
2020/08/27 jQuery
JavaScript读取本地文件常用方法流程解析
2020/10/12 Javascript
[02:58]献给西雅图的情书_高清
2014/05/29 DOTA
python基础教程之获取本机ip数据包示例
2014/02/10 Python
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
Python中实现字符串类型与字典类型相互转换的方法
2014/08/18 Python
Python中的hypot()方法使用简介
2015/05/18 Python
浅谈django中的认证与登录
2016/10/31 Python
python用户管理系统
2018/03/13 Python
利用python打开摄像头及颜色检测方法
2018/08/03 Python
python识别图像并提取文字的实现方法
2019/06/28 Python
使用python远程操作linux过程解析
2019/12/04 Python
html5设计原理(推荐收藏)
2014/05/17 HTML / CSS
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
企划主管岗位职责
2013/12/12 职场文书
出纳担保书范文
2014/04/02 职场文书
cf战队收人口号
2014/06/21 职场文书
2015年医院工作总结范文
2015/04/09 职场文书
2015年化妆品销售工作总结
2015/05/11 职场文书
家庭贫困证明
2015/06/16 职场文书
史上最全的军训拉歌口号
2015/12/25 职场文书
品德与社会教学反思
2016/02/24 职场文书