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

如何在含try-except的for循环中统一追加DataFrame(含异常空表)

实现方案

完全可以通过try-except实现需求,核心思路是每个查询无论成功或失败,都生成对应的DataFrame(成功时是提取的表,失败时是空表),然后统一追加到总DataFrame中。不需要依赖finally块,简化后的代码逻辑如下:

import pandas as pd

# 初始化总DataFrame
total_df = pd.DataFrame()

list_of_querys = ["查询1", "查询2", "查询3"]  # 替换为你的实际查询列表

for query in list_of_querys:
    try:
        # 替换成你的实际表格提取逻辑(比如查询数据库、解析接口返回等)
        df = pd.DataFrame({"查询标识": [query], "数据列1": [100], "数据列2": [200]})
    except Exception as e:
        # 出错时创建带查询标识的空表,便于后续排查问题
        df = pd.DataFrame({"查询标识": [query], "错误信息": [str(e)]})
    # 统一追加到总表,无论成功失败都会执行
    total_df = pd.concat([total_df, df], ignore_index=True)

关键细节说明:

  • 成功分支:执行你的实际表格提取逻辑,生成包含有效数据的DataFrame。
  • 失败分支:创建空表时建议保留查询标识和错误信息字段,避免空表无意义,方便后续定位哪个查询出了问题。
  • 统一追加:将追加操作放在try-except结构之外,确保每个查询对应的结果(成功数据或错误记录)都能被合并到总表中。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 19:09:32