Python——第五章:shutil模块

发布时间 2023-12-13 13:46:19作者: Magiclala

复制文件

把dir1的文件a.txt 移动到dir2内

import shutil
shutil.move("dir1/a.txt", "dir2")

复制两个文件句柄

f1 = open("dir2/a.txt", mode="rb")  # 准备读f1
f2 = open("dir1/b.txt", mode="wb")  # 准备写f2
shutil.copyfileobj(f1, f2)
f1.close()
f2.close()


#with写法更完美
with open("dir2/a.txt", mode="rb") as f1, open("dir1/b.txt", mode="wb") as f2:    #准备读取 f1,准备写入 f2
    shutil.copyfileobj(f1, f2)

复制文件的内容:把b.txt文件复制一份,并保存为c.txt

shutil.copyfile("dir1/b.txt", "dir1/c.txt") #参数是文件路径

复制文件的内容+文件的权限

shutil.copy("dir1/b.txt", "dir1/d.txt")

复制文件的内容+文件的权限+修改时间

shutil.copy2("dir1/b.txt", "dir1/e.txt")

替换文件的时间和权限(单不复制内容)

shutil.copystat("dir1/a.txt", "dir1/b.txt")

只替换文件的权限

shutil.copymode("dir1/a.txt", "dir1/c.txt")

 

复制文件夹

shutil.copytree("dir1", "dir3")

 

删除文件夹

shutil.rmtree("dir2")