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

Python列表逐个append后导出CSV仅单列,如何调整实现多列分栏输出?

问题根因

你现在的代码是将每一行的三个字段逐个追加到一维列表中,最终得到的是扁平化的一维序列,pandas读取这类一维数据默认只会生成单列的DataFrame,就是你现在遇到的情况。

修改后的代码

import pandas as pd

data = []
for row in res:
    result = ''.join(row[0])
    p = Payload(result)
    # 单条记录的三个字段作为整体加入列表,生成二维表格结构
    data.append([p.a, p.b, p.c])

# 构造DataFrame并指定列名
df = pd.DataFrame(data, columns=['id', 'subject', 'text'])

# 导出CSV,用utf-8-sig编码避免Windows下打开乱码
df.to_csv('test.csv', sep=',', encoding='utf-8-sig', index=False)

核心修改点

  • 循环内不再单独追加单个字段值,改为每次追加包含三个字段的列表,让data整体变成二维结构,每个子元素对应表格的一行
  • 移除冗余的numpy拼接、变形操作,直接用二维列表构造DataFrame,同时指定表头列名
  • 导出编码调整为utf-8-sig,兼容Windows系统下的CSV文件读取,若你需要制表符分隔,把sep=','改回sep='\t'即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 02:15:02