Python3 文件打包与解包

在做业务中有时候会遇到批量文件下载的功能,要批量下载需先将文件进行打包,这里介绍常用的 ziptar 打包与解包

Python 中内置了打包的库,我们直接使用即可

zip

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

import zipfile


# zip 打包
z = zipfile.ZipFile('black.zip', 'w') # 创建一个空包
z.write('./image-1.jpg')
z.write('./image-2.png')
z.close() 

# zip 解包
z = zipfile.ZipFile('black.zip', 'r')
zip_list = z.namelist()     # 包里所有文件列表
z.extractall()              # 解压所有文件
z.extract('image-1.jpg')    # 解压指定文件
z.close() 

tar

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

import tarfile


# tar 打包
tar = tarfile.open('black.tar.gz', 'w') # 创建一个空包
# 将文件写入包内,arcname 是文件对象,压缩后包里文件名称就是这个对象名
tar.add('./image-1.jpg', arcname='image1')
tar.add('./image-2.png', arcname='image2')
tar.close()

# tar 解包
tar = tarfile.open('black.tar.gz', 'r')
tar.extractall()                        # 解压所有文件
tar.extract(tar.getmember('image1'))    # 解压指定文件,需要传入文件对象名
tar.close()
发布了356 篇原创文章 · 获赞 315 · 访问量 124万+

猜你喜欢

转载自blog.csdn.net/yilovexing/article/details/104706714