1. shutil模块简介
shutil模块是Python标准库中的一个模块,提供了对文件和目录的高级操作支持。它是对os模块的补充,能够实现一些os模块无法或不便直接提供的功能。
2. shutil模块的主要功能
2.1 文件和目录的复制
shutil模块提供了多个函数来实现文件和目录的复制操作。其中,最常用的函数是shutil.copy()和shutil.copytree()。
shutil.copy(src, dst)函数用于将文件从源路径src复制到目标路径dst。例如,要将名为file.txt的文件复制到目录/home/user/下:
import shutil
src = 'file.txt'
dst = '/home/user/file.txt'
shutil.copy(src, dst)
shutil.copytree(src, dst)函数用于将整个目录从源路径src复制到目标路径dst,包括目录下的所有文件和子目录。例如,要将名为dir1的目录复制到目录/home/user/下:
import shutil
src = 'dir1'
dst = '/home/user/dir1'
shutil.copytree(src, dst)
2.2 文件和目录的移动与重命名
shutil模块还提供了文件和目录的移动与重命名操作。其中,最常用的函数是shutil.move()。
shutil.move(src, dst)函数用于将文件或目录从源路径src移动到目标路径dst,并且可以实现重命名操作。例如,要将名为file.txt的文件移动到目录/home/user/下并重命名为file_new.txt:
import shutil
src = 'file.txt'
dst = '/home/user/file_new.txt'
shutil.move(src, dst)
2.3 文件和目录的删除
shutil模块还提供了文件和目录的删除操作。其中,最常用的函数是shutil.rmtree()。
shutil.rmtree(path)函数用于递归删除一个目录以及目录下的所有文件和子目录。例如,要删除名为dir1的目录以及其下的所有文件和子目录:
import shutil
path = 'dir1'
shutil.rmtree(path)
3. 总结
通过shutil模块,我们可以更方便地进行文件和目录的复制、移动、重命名和删除操作。它提供了一些高级功能,为我们的文件处理提供了便利。
在实际应用中,我们可以根据需要利用shutil模块的各个函数实现文件和目录的批量操作。这样可以大大提高工作效率,减少手动操作的繁琐,使代码更简洁、优雅。