• shutil模块


    1.基本用法

     1 #!/usr/bin/env python
     2 # -*- coding:utf-8 -*-
     3 # Author:James Tao
     4 
     5 import shutil
     6 
     7 #copy文件方法一
     8 f1=open('copyshutil.txt',encoding='UTF-8')
     9 f2=open('mycopy.txt','w',encoding='UTF-8')
    10 shutil.copyfileobj(f1,f2)#copy一个新文件内容与copyshutil相同
    11 
    12 #copy文件方法二
    13 shutil.copyfile('copyshutil.txt','mycopy.txt')
    14 
    15 #copy文件所有属性
    16 shutil.copystat('copyshutil.txt','mycopy.txt')#必须传入两个已存在的文件,不创建文件
    17 
    18 #同时copy文件和权限
    19 shutil.copy('copyshutil.txt','mycopy.txt')#创建一个新文件
    20 
    21 #同时copy文件和状态信息
    22 shutil.copy2('copyshutil.txt','mycopy.txt')#创建一个新文件
    23 
    24 #递归地copy文件
    25 shutil.copytree('shutilfile','myshutilfile')#创建一个新文件,并将原文件内的所有子文件copy
    26 
    27 #删除目录
    28 shutil.rmtree('myshutilfile')

    2.压缩文件

    创建压缩包并返回文件路径,例如zip、tar

    代码格式:shutil.make_archive(base_name,format,root_dir,owner,group,logger)、

    base_name:压缩包的文件名,也可以是压缩包的路径

              只写文件名base_name:保存至当前路径

              写成Users用户123ase_name:保存至Users用户123ase_name

    format:压缩包种类:zip,tar,bztar,gztar

    root_dir:要压缩的文件夹路径(默认当前目录)

    owner:用户,默认当前用户

    group:组,默认当前组

    logger:用于记录日志,通常是logging.Logging对象

    代码:

    1 shutil.make_archive('shutil_archive','zip','D:python')#将D:python文件夹压缩保存至当前路径,压缩包名为shutil_archive.zip

    运行结果:

    压缩文件的过程实际上要调用zipfile模块,例:

    1 import zipfile
    2 z=zipfile.ZipFile('day5.zip','w')#在当前路径生成一个名字为day5的压缩文件
    3 
    4 z.write('mycopy.txt')#将mycopy.txt压缩进名字为day5的压缩文件
    5 z.close()

    运行结果:

  • 相关阅读:
    linux删除大小为0,linux下批量删除空文件(大小等于0的文件) 和 乱码文件
    在 VMware 上启用 SCSI_ID
    vmware中的RHEL scsi_id不显示虚拟磁盘的wwid的问题
    spring cloud 集成和使用
    spring cloud alibaba 常见用法
    rabbitmq 和 erlang window 安装
    系统架构 垂直拓展 水平拓展的区别
    SPI 服务提供者接口
    摩斯密码
    vue3 pinia 和 vuex的对比
  • 原文地址:https://www.cnblogs.com/BIT-taozhen/p/9867013.html
Copyright © 2020-2023  润新知