脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - 详解Python_shutil模块

详解Python_shutil模块

2021-06-06 00:43Vera_y Python

这篇文章主要介绍了Python_shutil模块功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

import shutil

高级的文件,文件夹,压缩包的处理模块,也主要用于文件的拷贝

shutil.copyfileobj(fsrc,fdst[,length]):  将文件的内容拷贝到另一个文件(可以指定length长度进行拷贝)

?
1
2
import shutil
shutil.copyfileobj(open('old.txt','r'),open('new.txt','w'))

shutil.copyfile(src,dst):  拷贝文件

?
1
2
import shutil
shutil.copyfile('f1.log','f2.log')

shutil.copymode(src,dst):  仅拷贝权限,内容、组、用户均不变

?
1
2
import shutil
shutil.copymode('f1.log', 'f2.log')

shutil.copystat(src,dst):  拷贝状态的信息,包括:mode bits,atime,mtime,flags

?
1
2
import shutil
shutil.copystat('f1.log', 'f2.log')

shutil.copy(src,dst):  拷贝文件和权限

?
1
2
import shutil
shutil.copy('f1.log', 'f2.log')

shutil.copy2(src,dst):  拷贝文件和状态信息

?
1
2
import shutil
shutil.copy2('f1.log', 'f2.log')

shutil.copytree(src,det,symlinks=False,ignore=None):  递归的去拷贝文件

?
1
2
import shutil
shutil.copytree('folder1', 'folder2', ignore=shutil.ignore_patterns('*.pyc', 'tmp*'))

shutil.rmtree(path[,ignore_errors[,onerror]]):  递归的去删除文件

?
1
2
import shutil
shutil.rmtree('folder1')

shutil.move(src,dst):  递归的去移动文件(重命名)

?
1
2
import shutil
shutil.move('folder1', 'folder3')

shutil.make_archive(base_name, format,...):  创建压缩包并返回文件路径,例如:zip、tar

base_name: 压缩包的文件名,也可以是压缩包的路径。只是文件名时,则保存至当前目录,否则保存至指定路径(例:Presley=>保存至当前路径,/User/Presley =>保存至/Users/路径下)
format: 压缩包种类,“zip”, “tar”, “bztar”,“gztar”
root_dir: 要压缩的文件夹路径(默认当前目录)
owner: 用户,默认当前用户
group: 组,默认当前组

?
1
2
import shutil
z = shutil.make_archive('presly', 'gztar', root_dir='D:\软件下载')

shutil对压缩包的处理,也可调用zipfile或tarfile模块进行压缩

以上所述是小编给大家介绍的Python_shutil模块详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://www.cnblogs.com/Vera-y/p/9671535.html

延伸 · 阅读

精彩推荐