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解析xml文件实例分享
Dec 04 Python
python socket 超时设置 errno 10054
Jul 01 Python
跟老齐学Python之用while来循环
Oct 02 Python
深入理解python try异常处理机制
Jun 01 Python
高质量Python代码编写的5个优化技巧
Nov 16 Python
python创建文件时去掉非法字符的方法
Oct 31 Python
pycharm运行程序时在Python console窗口中运行的方法
Dec 03 Python
基于MSELoss()与CrossEntropyLoss()的区别详解
Jan 02 Python
Pytorch模型转onnx模型实例
Jan 15 Python
Python实现AI自动抠图实例解析
Mar 05 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
Jun 28 Python
pytorch中Schedule与warmup_steps的用法说明
May 24 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程序
2006/10/09 PHP
php 运行效率总结(提示程序速度)
2009/11/26 PHP
深入解析PHP垃圾回收机制对内存泄露的处理
2013/06/14 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
2015/12/22 PHP
值得分享的php+ajax实时聊天室
2016/07/20 PHP
实例介绍PHP删除数组中的重复元素
2019/03/03 PHP
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
JavaScript中instanceof与typeof运算符的用法及区别详细解析
2013/11/19 Javascript
页面刷新时记住滚动条的位置jquery代码
2014/06/17 Javascript
jquery复选框多选赋值给文本框的方法
2015/01/27 Javascript
Node.js node-schedule定时任务隔多少分钟执行一次的方法
2015/02/10 Javascript
Javascript随机标签云代码实例
2016/06/21 Javascript
Vue项目全局配置页面缓存之按需读取缓存的实现详解
2018/08/01 Javascript
微信小程序中悬浮窗功能的实现代码
2019/08/02 Javascript
通过实例了解Nodejs模块系统及require机制
2020/07/16 NodeJs
总结Python中逻辑运算符的使用
2015/05/13 Python
Python OS模块常用函数说明
2015/05/23 Python
浅谈使用Python内置函数getattr实现分发模式
2018/01/22 Python
Pygame框架实现飞机大战
2020/08/07 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
Superdry瑞典官网:英国日本街头风品牌
2017/05/17 全球购物
斯洛伐克家具和时尚装饰品购物网站:Butlers.sk
2019/09/08 全球购物
中科软测试工程师面试题
2012/06/16 面试题
简历的自荐信
2013/12/19 职场文书
简历里的自我评价
2014/01/31 职场文书
关于中国梦的演讲稿
2014/04/23 职场文书
群众路线教育查摆剖析材料
2014/10/10 职场文书
广告业务员岗位职责
2015/02/13 职场文书
2015年乡镇平安建设工作总结
2015/05/13 职场文书
2015中学教学工作总结
2015/07/22 职场文书
结婚十年感言
2015/07/31 职场文书
人生一定要学会的三样东西:放下、忘记、珍惜
2019/08/21 职场文书
餐厅如何利用“营销策略”扭转亏本局面
2019/10/15 职场文书
教你用python控制安卓手机
2021/05/13 Python
JavaScript选择器函数querySelector和querySelectorAll
2021/11/27 Javascript