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监控主机是否存活并以邮件报警
Sep 22 Python
深入理解python中函数传递参数是值传递还是引用传递
Nov 07 Python
Python第三方库h5py_读取mat文件并显示值的方法
Feb 08 Python
详解django2中关于时间处理策略
Mar 06 Python
python gensim使用word2vec词向量处理中文语料的方法
Jul 05 Python
pandas中遍历dataframe的每一个元素的实现
Oct 23 Python
python3.8 微信发送服务器监控报警消息代码实现
Nov 05 Python
浅谈tensorflow之内存暴涨问题
Feb 05 Python
python实现密码强度校验
Mar 18 Python
Python迭代器协议及for循环工作机制详解
Jul 14 Python
详解python中的异常捕获
Dec 15 Python
pycharm无法安装cv2模块问题
May 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
Linux Apache PHP Oracle 安装配置(具体操作步骤)
2013/06/17 PHP
php获取mysql字段名称和其它信息的例子
2014/04/14 PHP
php数组查找函数总结
2014/11/18 PHP
php计算两个整数的最大公约数常用算法小结
2015/03/05 PHP
php准确获取文件MIME类型的方法
2015/06/17 PHP
PHP下载生成的csv文件及问题总结
2015/08/06 PHP
JavaScript 动态添加表格行 使用模板、标记
2009/10/24 Javascript
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
jquery 操作DOM案例代码分享
2012/04/05 Javascript
浅谈Javascript Base64 加密解密
2014/12/28 Javascript
js图片轮播特效代码分享
2015/09/07 Javascript
js获取url传值的方法
2015/12/18 Javascript
JS锚点的设置与使用方法
2016/09/05 Javascript
jQuery插件zTree实现单独选中根节点中第一个节点示例
2017/03/08 Javascript
利用JS实现简单的瀑布流加载图片效果
2017/04/22 Javascript
js实现input密码框显示/隐藏功能
2020/09/10 Javascript
JavaScript实现联动菜单特效
2020/01/07 Javascript
[02:28]PWL开团时刻DAY3——Ink Ice与DeMonsTer之间的勾心斗角
2020/11/03 DOTA
教你用 Python 实现微信跳一跳(Mac+iOS版)
2018/01/04 Python
Python编写Windows Service服务程序
2018/01/04 Python
详解python函数传参是传值还是传引用
2018/01/16 Python
每天迁移MySQL历史数据到历史库Python脚本
2018/04/13 Python
Python根据已知邻接矩阵绘制无向图操作示例
2018/06/23 Python
python的time模块和datetime模块实例解析
2019/11/29 Python
手动安装python3.6的操作过程详解
2020/01/13 Python
详解python 降级到3.6终极解决方案
2020/02/06 Python
matplotlib自定义鼠标光标坐标格式的实现
2021/01/08 Python
使用canvas实现黑客帝国数字雨效果
2020/01/02 HTML / CSS
九年级英语教学反思
2014/01/31 职场文书
离婚协议书范本(2014版)
2014/09/28 职场文书
小学生作文批改评语
2014/12/25 职场文书
瞿秋白纪念馆观后感
2015/06/10 职场文书
2015初中团支部工作总结
2015/07/21 职场文书
承诺书怎么写 ?
2019/04/16 职场文书
爱心捐款倡议书:点燃希望,传递温暖
2019/11/04 职场文书
windows11怎么查看wifi密码? win11查看wifi密码的技巧
2021/11/21 数码科技