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各种
相关推荐
0566468 小时前
agent学习Day15——SQLAlchemy 查询过滤、分页与历史列表接口
python·学习·fastapi
程序员爱德华9 小时前
Python与C++:异同点对比
c++·python
hangyuekejiGEO9 小时前
GEO技术服务选型指南
大数据·人工智能·python
软萌萌的110 小时前
Java Spring Boot 修改yml配置&加载顺序规则
java·spring boot·python
Dxy123931021611 小时前
Linux 编译安装 Python 3.12.10(多版本共存,不破坏系统Python)
linux·运维·python
持敬chijing12 小时前
Python概述
开发语言·python
赤羽尾风14 小时前
NumPy快速入门
python·numpy
倒流时光三十年14 小时前
第三阶段 26 · highlight 高亮(返回命中片段)
后端·python·django
久久学姐16 小时前
Python+Playwright+Pytest+BDD,用FSM打造高效测试框架
python·pytest·bdd·playwright·fsm