python zipfile

代码:

import zipfile
import zipfile as zip

def YaSuo():
    # 1.打开或创建zip文件
    zp=zip.ZipFile(file='./LoadFile/python程序创建的压缩包.zip',mode='w',compression=zipfile.ZIP_STORED,allowZip64=False)
    print(zp)
    '''
        功能:创建一个zipFile对象,表示一个zip文件。
        参数:
            f1le:表示文件的路径或类文件对象(f1le-like object)
            mode:指示打开zip文件的模式,默认值为r
                r 表示读已经存在的zip文件。
                w 表示新建一个zip文档或覆盖一个已经存在的zip文档。
                a 表示将数据附加到一个现存的zip文档中。
            compression:表示在写zip文档时使用的压缩方法
                zipfile.ZIP STORED 只是存储模式,不会对文件进行压缩,这个是默认值
                zipfile.ZIP DEFLATED 对文件进行压缩
            a11owzip64 表示如果要操作的zip文件大小超过2G,应该将a11owzip64设置为True。
    '''
    # 2.向压缩包中添加文件或目录
    zp.write(filename='D:/我的文档/Desktop/临时文件/灌注桩_许.pdf',arcname='看守所项目灌注桩进度款.pdf')
    zp.write(filename='H:/评职称/图片/椰城杯.png',arcname='/评职称资料/椰城杯.png')
    zp.write(filename='E:/正式项目\大埔项目/09班组结算/外架班-张传品/结算数据.xlsx',arcname='结算数据.xlsx')
    '''
        filename:表示向压缩包中添加的文件的路径
        arcname:表示文件添加在压缩包中的名称,可以同原文件名不一致。如果需要在压缩包中添加文件夹层级,可以写
                成arcname='/评职称资料/椰城杯.png'的形式,表示图片“椰城杯.png”在压缩中的文件夹“评职称资
                料”中。该参数必须填,否则运行时会报错。
    '''
    # 3.关闭zip文件
    zp.close()
def JieYa():
    # 1.打开文件
    zp=zip.ZipFile(file='./LoadFile/python程序创建的压缩包.zip',mode='r')
    '''
        打开文件的模式选择r,后面两个参数不需要写。
    '''
    print(zp)
    # 2.解压文件
    # 2.1解压所有文件
    zp.extractall(path='./LoadFile/张三',members=['结算数据.xlsx','看守所项目灌注桩进度款.pdf'])
    '''
    参数解读:
        path:指定解压文件的路径,如果该路径不存在,则会自动创建该路径
        members:指定解压的压缩包中的文件名称,数值类型是一个列表。如果为空,则表示解压压缩包中的所有文件。        
    '''
    # 2.2解压指定文件
    zp.extract(path='./LoadFile/解压单个文件/',member='结算数据.xlsx')
    '''
        zp.extract()    一次只能解压一个文件
        参数:
            path:指定解压的文件夹,如果不存在,则会创建
            member:指定要解压的压缩包中的文件名称,数值为字符串。如果解压压缩中文件夹下的文件,则需要在文件
                    名称前加文件夹的路径。如:member='/评职称资料/椰城杯.png'
    
    '''
    # 3.关闭文件
    zp.close()
def TestAddFile():
    zp=zip.ZipFile(file='./LoadFile/python程序创建的压缩包.zip',mode='a')
    zp.write(filename='D:/我的文档/Desktop/毛泽东/毛泽东万岁.txt', arcname='毛泽东万岁.txt')
    zp.close()

# JieYa()
TestAddFile()
'''
已经学习至22:20
'''

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值