Python培训
400-996-5531
我想大家在工作中经常会需要有一些关于文件拷贝之类的操作或者去写这方面的插件,所以今天为大家来讲一讲关于使用python来拷贝文件常用的3种方法,以及这三种方法之间速度的对比,相信大家看完之后会有所收获。
相信大多数朋友都在使用这个shutil的copytree和copy2函数进行拷贝操作,copytree函数是用来拷贝文件夹的,而copy2可以进行单个文件的拷贝。使用方法也很简单,都是有两个参数,第一个参数是要拷贝的路径,另外一个参数是拷贝到的路径。
eg:
对于cmd的复制操作,经常写bat的朋友们肯定会想到的是copy和xcopy,虽然这两个都很好用,但是都太古老了,而且速度都很慢。微软在vista后内嵌了一个拷贝神器robocopy,这个神器在win7后还支持了多线程。
关于他的有哪些参数我们可以在cmd中输入robocopy /?进行查看。
大家也可以在这个链接里面查看到用法:
http://baike.baidu.com/item/robocopy
这里我给大家一个用python调用这个命令的简单小例子,大家可以根据自己生产中的情况自己添加其中的一些参数。
eg:
os.system("robocopy %s %s /MT:%d /E" % (source.replace("/", "\\"), target.replace("/", "\\"), thread))
robocopy("D:/source_test", "D:/copy_test")注意:cmd中的命令只认\,而不认/ ,因此路径需要转成成“\\”。
fastcopy这个工具是一款免费开源的文件拷贝工具,最重要的是他支持命令行。
fastcopy下载地址:
#/tools/fastcopy.html
关于参数命令大家可以输入fastcopy /?或者参考下面这个文章进行学习。
#/jingyan/125518.html
这里依然给大家一个Python调用的小例子,供大家学习。
eg:
基本最常用的就是这3种方法,然后我们来说下这3种拷贝的速度,最近几天在公司正好做了这3个方法的用时测试,这里我直接给大家看一下。(文件都是从服务拷到本地,数据中的值单位为秒)
由上面的数据可以看出,当文件较小时,robocopy拷贝速度最快;当文件越来越大后,fastcopy速度就超过了robocopy,因此,建议大家根据实际情况来选择对应的拷贝方法。
没有最好的,只有最合适的~
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved