python-文件压缩和解压tar格式

简介

文件压缩和解压在日常生活中经常被使用,可以提高文件传输速度和方便文件共享。

文件压缩可以减少文件的大小,从而节省磁盘空间和文件的传输时间。文件解压则是将压缩文件恢复为原始的文件或文件夹。

比如:将文件夹压缩成一个压缩文件,通过电子邮件或其他方式发送给他人,对方收到后解压缩得到原始文件。

使用python脚本压缩文件,tar格式

import os
import tarfile

def recursive_files(dir_name='.', ignore=None):
    for dir_name,subdirs,files in os.walk(dir_name):
        if ignore and os.path.basename(dir_name) in ignore: 
            continue

        for file_name in files:
            if ignore and file_name in ignore:
                continue

            yield os.path.join(dir_name, file_name)

def make_tar_file(dir_name='.', tar_file_name='tarfile.tar', ignore=None):
    tar = tarfile.open(tar_file_name, 'w')

    for file_name in recursive_files(dir_name, ignore):
        tar.add(file_name)

    tar.close()


dir_name = '.'
tar_file_name = 'archive02.tar'
ignore = {'.ipynb_checkpoints', '__pycache__', tar_file_name}
make_tar_file(dir_name, tar_file_name, ignore)

 解压文件

import tarfile

def untar(file_tar,dir_tar):
    with tarfile.open(file_tar,'r') as tar:
        tar.extractall(path=dir_tar)

untar('archive02.tar','./dir_tar')

解压后的文件在目录dir_tar下面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值