You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将zipfile输出转换为Pandas DataFrame?解决printdir()返回None问题

解决方案:将ZIP文件目录转为Pandas DataFrame

printdir()确实只会把内容打印到控制台,返回值是None,没法直接转成DataFrame。但我们可以直接从ZipFile对象里提取文件的元数据,不用依赖printdir的输出。

实现步骤

  • 用ZipFile.infolist()获取ZIP内所有文件的详细信息(每个元素是ZipInfo对象,包含文件名、修改时间、大小等)
  • 从每个ZipInfo对象中提取需要的字段,整理成列表后传入Pandas DataFrame
  • 可选:把date_time字段(元组格式)转成可读性更强的日期时间格式

示例代码

import zipfile
import pandas as pd
from datetime import datetime

with zipfile.ZipFile("files.zip", mode="r") as archive:
    # 提取所有文件的元数据
    zip_info_list = archive.infolist()
    # 整理成DataFrame需要的结构
    data = []
    for info in zip_info_list:
        # 跳过目录(如果有的话)
        if not info.is_dir():
            data.append({
                "文件名": info.filename,
                "修改时间": datetime(*info.date_time),
                "原始大小(字节)": info.file_size,
                "压缩后大小(字节)": info.compress_size
            })
    # 转成DataFrame
    df = pd.DataFrame(data)

# 查看结果
print(df)

说明

  • 如果需要保留目录,可以去掉if not info.is_dir()的判断
  • ZipInfo还有其他字段(比如compress_type压缩类型),可以根据需求添加到数据中

内容的提问来源于stack exchange,提问作者SARTHAK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 01:15:37