shutil库文件的操作

一、拷贝,移动,改名

import shutil

old_file=r"C:\Users\ffm11\Desktop\AI.docx"
new_file=r"C:\Users\ffm11\Desktop\AI_new.docx"
# 拷贝文件和权限,不能覆盖目标文件
shutil.copy(old_file,new_file)

# 改变文件的属主和属组,只在linux中使用
shutil.chown(old_file,user="maple",group="python")

#拷贝文件并复制所有统计信息,如修改时间等。不能覆盖目标文件
shutil.copy2(old_file,new_file)

# 递归的去拷贝文件夹
src=r"C:\Users\ffm11\Desktop\机器学习"
dst=r"C:\Users\ffm11\Desktop\机器学习1"
shutil.copytree(src, dst)

# 递归的去删除文件
shutil.rmtree(dst)

# 递归的去移动文件,它类似mv命令,其实就是重命名。
shutil.move(src, dst)

# 复制文件,可以覆盖目标文件。
shutil.copyfile(src, dst)

二、文件的压缩和解压

import shutil

old_file=r"C:\Users\ffm11\Desktop\AI.docx"
new_file=r"C:\Users\ffm11\Desktop\AI_new.docx"

#将src目录下的所有文件压缩到dst目录下取名为机器学习1,压缩格式为tar
shutil.make_archive(dst+"/机器学习1",'tar',root_dir=src)


#将文件解压到文件
filename=r"C:\Users\ffm11\Desktop\机器学习1\机器学习1.tar"
extract_dir=r"C:\Users\ffm11\Desktop\机器学习2"
shutil.unpack_archive(filename, extract_dir)
posted @ 2019-12-14 21:45  Maple_feng  阅读(503)  评论(0编辑  收藏  举报