You need to enable JavaScript to run this app. 如何使用pandas将字典列表写入Excel文件
优惠活动
大模型
产品
解决方案
定价
更多

如何使用pandas将字典列表写入Excel文件

问题排查与解决

错误原因

  • 循环写入同一工作表时每次都会覆盖原有内容,无法实现数据追加
  • DataFrame构造参数逻辑错误,将字典键、值分别传入数据位和索引位,和你需要的vlan/port列结构完全不匹配
  • 未处理空端口列表的场景,会导致部分数据缺失或结构异常

正确实现代码

import pandas as pd

# 原始测试数据
lstofdic = [{'96': ['1/3/21', '1/3/22']}, {'97': ['1/3/20']}, {'98': []}, {'180': ['1/4/7']}, {'181': []}]

# 预处理为标准二维表结构
processed_data = []
for dic in lstofdic:
    # 取单个字典的键(vlan号)和值(端口列表)
    vlan_id = next(iter(dic.keys()))
    port_list = dic[vlan_id]
    # 空端口列表单独处理,保留vlan,端口设为空
    if not port_list:
        processed_data.append({"vlan": vlan_id, "port": ""})
        continue
    # 一个vlan对应多个端口的话,逐行生成记录
    for port in port_list:
        processed_data.append({"vlan": vlan_id, "port": port})

# 生成DataFrame后写入Excel
with pd.ExcelWriter("out.xlsx") as writer:
    pd.DataFrame(processed_data).to_excel(writer, sheet_name='sheet1', index=False)

输出说明

生成的Excel sheet1页面会按行展示所有vlan与对应端口的映射关系,单个vlan对应多个端口时会拆分多行显示,无端口的vlan会保留记录、端口列为空值,符合常规数据导出的使用习惯。

内容的提问来源于stack exchange,提问作者Dhananjaya D N

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 03:57:03