shutil模块提供移动、复制、打包文件等高阶操作。1.移动用shutil.move(),可重命名或覆盖文件;2.复制单个文件用shutil.copy(),保留内容和权限,复制目录用shutil.copytree(),目标路径不可存在;3.打包用shutil.make_archive(),支持zip/tar格式,解压用shutil.unpack_archive();4.其他功能包括删除目录shutil.rmtree()、查找命令shutil.which()、查看磁盘使用shutil.disk_usage(),使用时注意测试防止误删。
在 Python 中处理文件和目录时,除了基本的读写操作,有时候还需要进行移动、复制甚至打包归档等操作。这时候 shutil 模块就派上用场了。它提供了很多方便的函数,让你能轻松完成这些“高阶”文件操作。
如果你需要把一个文件或者整个目录从一个地方挪到另一个地方,shutil.move() 就是你的首选。
这个函数的行为很像系统里的“剪切+粘贴”,使用起来也非常简单:
import shutil shutil.move('source_folder/file.txt', 'target_folder/')
一个小技巧:如果你想重命名文件也可以用这个方法,只要在目标路径里改个名字就行,比如:shutil.move('old_name.txt', 'new_name.txt')
复制比移动更常用,特别是你想保留原文件的情况下。常用的有两个函数:
立即学习“Python免费学习笔记(深入)”;
举个例子:
# 复制单个文件 shutil.copy('source.txt', 'backup.txt') # 复制整个文件夹 shutil.copytree('original_dir', 'backup_dir')
需要注意的地方:
当你想把一堆文件打成压缩包,或者反过来解压一个 zip 文件,shutil 同样支持。
shutil.make_archive('backup', 'zip', 'my_files')
这段代码会把 my_files 目录下的所有内容打包成 backup.zip。
shutil.unpack_archive('backup.zip', 'extract_here')
虽然不是标题重点,但这里顺便提几个有用的函数:
这些都能在日常脚本开发中带来便利。
基本上就这些,shutil 虽然功能不算复杂,但非常实用。关键是在做批量文件操作时,能省下不少手动处理的时间。不过也正因为它的“破坏性”操作较多,比如移动、删除,建议在正式运行前多测试几次,防止误删重要文件。
以上就是Python里shutil模块 高阶文件操作shutil的移动复制归档功能的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号