• python之shutil模块


    前言

    shutilPython 标准库中的高级文件操作模块,它作为os模块的补充,提供了复制、移动、删除、压缩、解压等操作。是一个非常重要的模块。

    模块导入

    import shutil
    
    • 1

    复制文件

    描述:复制文件
    语法:shutil.copy(src,dst)
    返回值:返回复制之后的路径

    import shutil
    
    # 1.将a.txt拷贝到work目录
    src = "a.txt"
    dst = "D:\work"
    shutil.copy(src,dst)
    
    # 将a.txt拷贝到work目录并重新命名为a1.txt
    src = "a.txt"
    dst = "D:\\work\\a1.txt"
    shutil.copy(src,dst)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    copy2()

    描述:可以把拷贝文件到指定目录,不同的是其保留了原文件的信息(操作时间和权限等)
    语法:shutil.copy2(src,dst)
    返回值:返回复制之后的路径

    import shutil
    shutil.copy2('1.log', '2.log')
    
    • 1
    • 2

    copyfile

    拷贝文件,目标文件无需存在

    import shutil
    shutil.copyfile('1.log', '2.log') 
    
    • 1
    • 2

    copymode

    仅拷贝权限。内容、组、用户均不变,目标文件必须存在

    import shutil
    shutil.copymode('1.log', '2.log')
    
    • 1
    • 2

    copytree

    递归复制目录
    src源文件夹必须存在,dst需保证此文件夹不存在,否则将报错

    import shutil
    shutil.copytree(src, dst)
    
    • 1
    • 2

    copystat

    仅拷贝状态的信息,包括:mode bits, atime, mtime, flags
    目标文件必须存在

    import shutil
    shutil.copystat('1.log', '2.log')
    
    • 1
    • 2

    move

    递归的去移动文件,它类似mv命令,其实就是重命名。

    import shutil
    shutil.move('folder1', 'folder2')
    
    • 1
    • 2

    rmtree

    递归的去删除文件

    import shutil
    shutil.rmtree('folder1') 
    
    • 1
    • 2

    压缩打包文件

    创建压缩包并返回文件路径,压缩包种类,ziptarbztargztar

    # 将 data下的文件打包成data1.zip
    import shutil
    ret = shutil.make_archive("data1", 'zip', 'data')
    
    • 1
    • 2
    • 3

    创作不易,求关注,点赞,收藏,谢谢~

  • 相关阅读:
    一、网络基础知识
    CN_计算机网络性能指标
    浮点数类型讲解
    【算法竞赛】【模式串匹配算法(KMP)】【附带模板题】
    [NOI2007] 调兵遣将
    unicode汉字编码转化
    UE4 通过按键控制Pawn比例大小
    基于核心素养劳动教育与学科教学融合研究结题报告
    vue之浏览器存储方法封装实例
    git hook
  • 原文地址:https://blog.csdn.net/qq233325332/article/details/127877953