Python之shutil模块

shutil

高级的 文件,文件夹,压缩包 处理模块

正常把一个文件的内容拷贝到另外一个文件

s = file("test.py")
d = file("test_copy.py","wd")
d.write(s.read())
d.close()

使用shutil拷贝模块

import shutil
s = file("test.py")
d = file("test_copy.py","wb")
shutil.copyfileobj(s,d)      #前面是源后面是目的

d.close()

 

使用这种方法可以指定从那个个字符开始拷贝

shutil.copyfileobj(s,d,length=2)   从第三个字符开始拷贝前面两个字符舍弃,一般直接拷贝整个文件

 

还有一种更加简单的方式拷贝,不用打开读取关闭文件了

shutil.copyfile("test.py","test_copy.py")

保留原有权限mtime信息

shutil.copystat("test.py","test_copy.py")

拷贝一个目录

shutil.copytree("1","2")

删除一个目录

shutil.rmtree("2")

 

压缩

shutil.make_archive("1_archive",format="zip",root_dir="1")

1_archive压缩后文件名,压缩格式为zip 压缩的目录为1,压缩完成后会自动在文件名后加扩展名zip

解压unzip 1_archive.zip 

出错了

换一种压缩格式

shutil.make_archive("1_archive",format="gztar",root_dir="1")

PS:zip的压缩机制如果文件夹里面为空则不压缩

 

posted @   minseo  阅读(332)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示