Python shutil模块(目录和文件操作)
2018-10-03 17:58:37来源:博客园 阅读 ()
import shutil #导入shutil模块
copyfileobj方法
将类文件对象fsrc的内容复制到类文件对象fdst
shutil.copyfileobj(fsrc, fdst[, length])
我一般的用法:
shutil.copyfileobj(open('file','r'),open('file','w'))
注:如果fsrc对象的当前文件位置不为0,那么将只复制从当前文件位置到文件末尾的内容
copyfile方法
将名为src的文件的内容复制到名为dst的文件中,并返回dst。src和dst是作为字符串给出的路径名
shutil.copyfile(src,dst,*,follow_symlinks=True)
目标位置必须是可写的。否则将引发OSError异常。如果dst已存在,它将被替换。
如果follow_symlinks为false,并且src是一个符号链接,那么将创建一个新的符号链接,而不是复制文件src指向(这是python文档里直接有道翻译出来的,我也没看懂是啥意思。学的还是太浅了········)
copymode方法
拷贝权限,文件内容、所有者和组不受影响。
shutil.copymode(src,dst,*,follow_symlinks=True)
src和dst是作为字符串给出的路径名
copystat方法
将权限位、最后访问时间、最后修改时间和标记从src复制到dst
shutil.copystat(src,dst,*,follow_symlinks=True)
copy方法
将文件src复制到文件或目录dst
shutil.copy(src,dst,*,follow_symlinks=True)
src和dst都是字符串,一般用法如下:
shutil.copy(r'要复制的文件路径(路径+文件)',r'复制到的路径')
注:要复制到的路径是存在的才行,不存在该路径会报错。
copy2方法
与copy()方法相同,只是copy2()还试图保存所有文件元数据。
shutil.copy2(src, dst, *, follow_symlinks=True)
copytree方法
递归的复制文件,该方法可以理解为复制电脑上某个文件夹以及文件夹内的东西到另一个文件夹
shutil.copytree(src,dst,ignore=None)
其中dst的路径的最后一级必须是不存在的。如:D:\tools 这里的tools这个文件夹必须是不存在的。由python创建。
这里的ignore参数需要结合下列方式
shutil.ignore_patterns(*patterns)
我的理解就是需要忽视的文件的模式。用法如下:
shutil.copytree(src,dst,ignore=ignore_patterns('*.py'))
这里的意思就是把 src目录下的文件都复制到 dst 目录下但是忽略掉 .py 文件。
注:这里要先定义一个需要忽略的文件的模式
如:
1 a=shutil.ignore_patterns('*.py') 2 shutil.copytree(src,dst,ignore=a)
rmtree方法
shutil.rmtree(path)
递归的形式删除 path 目录,以及目录下的所有文件
move方法
shutil.move(src,dst)
递归的形式移动 src 到 dst
如果dst是个现有的目录 python 会将src移动到dst内 ,dst如果是个不存在的目录 会调用os.ename 来改名字移动到目标位置。(应该是吧。我用的时候这个老报错,移动是移动过去了,结果原文件还在,也是很奇怪。)
正在学习中······,学到新的东西会来修改或更新。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Python Day1
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash