python shutil相关操作

python shutil模块常用操作

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

1.将文件内容拷贝至另一个文件中

shutil.copyfileobj(src, dist, length=16*1024),默认长度为16 * 1024,默认返回None

shutil.copyfileobj(open('test3.py', 'r'), open('test3/test2.py','w'))

2.拷贝文件

shutil.copyfile(src, dist),dist目标文件无需存在, 返回复制后的文件名称,此处为"test4.py",不拷贝权限、状态信息,只拷贝文本

shutil.copyfile("test3.py", "test4.py")

3.仅拷贝权限,内容、组、用户不变

目标文件必须存在,不拷贝内容、状态

shutil.copymode("test3.py","test4.py")

4.仅拷贝状态信息及读写权限

状态信息包括:mode bits, atime, mtime, flags;目标文件必须存在

shutil.copystat("test3.py","test4.py")

5.拷贝文件和权限

包括文件内容和文件的读写权限

shutil.copy("test3.py", "test5.py")

6.拷贝文件和状态信息

包含文件内容及状态信息:mode bits, atime, mtime, flags、读写权限

shutil.copy2("test3.py", "test6.py")

7.递归拷贝文件(从一个文件夹中拷贝到另一个文件夹)

递归拷贝文件需要目标文件夹不存在,ignore为忽略的文件或文件夹

shutil.copytree("test3","test4",ignore=shutil.ignore_patterns("*.py"))

8.递归删除文件夹

会删除全部文件及文件夹

shutil.rmtree("test4")

9.递归移动文件(相当于重命名)

shutil.move("test3","test4")

10.创建压缩包并返回文件的路径

shutil.make_archive(base_name, format, root_dir), base_name:压缩包的名称,format一般为"zip", "tar", "bztar" or "gztar",

root_dir:需要压缩的路径

shutil.make_archive("test", "zip", "test4")

11.解压缩压缩包

shutil.unpack_archive(base_name, extract_dir, format);base_name:压缩包路径;extract_dir:解压缩的路径;

format一般为"zip", "tar", "bztar" or "gztar"

shutil.unpack_archive("test.zip", "test5", "zip")

12.shutil压缩及解压缩原理

调用 ZipFile 和 TarFile 两个模块来进行的

posted @   形同陌路love  阅读(117)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示