pandas文件压缩:输出两个csv压缩文件并再次压缩

解决思路:

1.输出2个文件为csv.gz,进行首次压缩

2.对两个文件再次进行zip压缩,格式为.zip


def zip_cell_file(file1, file2, zip_file):
    with zipfile.ZipFile(zip_file, 'w') as z:
        z.write(file1)
        z.write(file2)


if __name__ == '__main__':
    file1 = '/data/1.csv.gz'
    file2 = '/data/2.csv.gz'
    zip_file = '/data/3.zip'

    data_frame1.to_csv(file1, index=False, sep=',', encoding='utf-8-sig', compression='gzip')

    data_frame2.to_csv(file2, index=False, sep=',', encoding='utf-8-sig', compression='gzip')
    
    # 压缩文件
    zip_cell_file(file1 , file12, zip_file)



处理完后会在/data目录下生成一个3.zip文件,解压后发现有个data目录,里面才是需要的1.csv.gz和2.csv.gz,故而进行优化添加arcname属性值:

def zip_cell_file(file1, file2, zip_file):
    with zipfile.ZipFile(zip_file, 'w') as z:
        z.write(file1, arcname=file1.split('/')[-1])
        z.write(file2, arcname=file2.split('/')[-1])

优化后,解压/data/3.zip 后可得到1.csv.gz和 2.csv.gz,可再次进行解压得到里面的1.csv和 2.csv

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lytcreate.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值