shutil是Python标准库中的一个模块,提供了一些高级的文件操作功能,例如复制、移动、重命名文件或文件夹等。shutil还支持压缩和解压缩文件以及归档(打包)多个文件或文件夹。这个模块的使用可以方便地进行文件和目录的管理。
shutil模块提供了很多实用的方法,以下是其中一些常用的方法:
-
shutil.copy(src, dst):将源文件src复制到目标位置dst。
-
shutil.move(src, dst):将源文件src移动到目标位置dst。
-
shutil.rmtree(path):删除指定路径下的所有文件和文件夹。
-
shutil.make_archive(base_name, format, root_dir):创建一个压缩包,支持的格式有"zip"、"tar"等。
-
shutil.unpack_archive(filename, extract_dir):解压缩一个压缩包到指定目录extract_dir下。
-
shutil.chown(path, user=None, group=None):更改指定路径下文件的拥有者和组。
-
shutil.disk_usage(path):获取指定磁盘分区使用情况的信息。
-
shutil.copytree(src, dst):递归地复制整个目录树。
我再删除一个目录的时候遇到一些错误,就是不生效,或者报错
import shutil shutil.rmtree("D:\\data\\uipath\\demo001") print("删除完成") FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'D:\\data\\uipath\\demo001'
这个路径不像其他包一样,它没有把反斜杠作为转义字符处理,路径中包含了转义字符\
而没有被正确处理。在这种情况下,我使用原始字符串(raw string)来避免转义字符的问题,例如:
import shutil path=r"D:\data\uipath\demo002" shutil.rmtree(path) print("删除完成")
结果依旧是不行,最后只能把反斜杠全部替换为斜杠才弄好
import shutil shutil.rmtree("D:/data/uipath/demo001") print("删除完成")