Python读取zip文件并解压,循环解压文件内的每个文件

读取并解压zip文件需要用到工具zipfile

示例代码

py 复制代码
import zipfile
import os


def readfile(path):
    files = os.listdir(path)
    file_list = []
    for file in files:  # 遍历文件夹
        if not os.path.isdir(file):
            file_list.append(path + '/' + file)
    return file_list


def read_zip(file_name):
    """读取zip文件"""
    zf = zipfile.ZipFile(file_name, mode='r')
    unzip_dir = os.path.dirname(os.path.realpath(__file__)) + '/unzip_dir'  # 解压路径
    for in_zip_file in zf.namelist():
        zf.extract(in_zip_file, unzip_dir)  # 解压到zip目录文件下
    # 循环读取解压后的文件
    for _file in readfile(unzip_dir):
        print(_file)


def main():
    zip_file = read_zip("xxx.zip")


if __name__ == '__main__':
    main()

最后的效果是xxx.zip文件内的文件会被解压到当前文件同目录下的 unzip_dir/文件夹下:

py 复制代码
    unzip_dir = os.path.dirname(os.path.realpath(__file__)) + '/unzip_dir'  # 解压路径

导出的文件可以使用如下方法读取:

py 复制代码
	for _file in readfile(unzip_dir):
        print(_file) # 读取的是文件名,具体的可以参考pandas各种
相关推荐
爱笑的眼睛111 小时前
超越 `cross_val_score`:深度解析Scikit-learn交叉验证API的架构、技巧与陷阱
java·人工智能·python·ai
smj2302_796826522 小时前
解决leetcode第3782题交替删除操作后最后剩下的整数
python·算法·leetcode
gCode Teacher 格码致知2 小时前
Python基础教学:Python 3中的字符串在解释运行时的内存编码表示-由Deepseek产生
python·内存编码
翔云 OCR API2 小时前
承兑汇票识别接口技术解析与应用实践
开发语言·人工智能·python·计算机视觉·ocr
likerhood3 小时前
3. pytorch中数据集加载和处理
人工智能·pytorch·python
Data_agent3 小时前
京东图片搜索商品API,json数据返回
数据库·python·json
深盾科技3 小时前
融合C++与Python:兼顾开发效率与运行性能
java·c++·python
yaoh.wang4 小时前
力扣(LeetCode) 104: 二叉树的最大深度 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
木头左4 小时前
机器学习辅助的LSTM交易策略特征工程与入参筛选技巧
python
Lenyiin4 小时前
《 Linux 修炼全景指南: 八 》别再碎片化学习!掌控 Linux 开发工具链:gcc、g++、GDB、Bash、Python 与工程化实践
linux·python·bash·gdb·gcc·g++·lenyiin