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):递归地复制整个目录树。
我再删除一个目录的时候遇到一些错误,就是不生效,或者报错
1 2 3 4 5 | import shutil shutil.rmtree( "D:\\data\\uipath\\demo001" ) print ( "删除完成" ) FileNotFoundError: [WinError 3 ] 系统找不到指定的路径。: 'D:\\data\\uipath\\demo001' |
这个路径不像其他包一样,它没有把反斜杠作为转义字符处理,路径中包含了转义字符\
而没有被正确处理。在这种情况下,我使用原始字符串(raw string)来避免转义字符的问题,例如:
1 2 3 4 | import shutil path = r "D:\data\uipath\demo002" shutil.rmtree(path) print ( "删除完成" ) |
结果依旧是不行,最后只能把反斜杠全部替换为斜杠才弄好
1 2 3 | import shutil shutil.rmtree( "D:/data/uipath/demo001" ) print ( "删除完成" ) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)