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

Python写入CSV时列表未正确拆分列的问题排查

问题分析与解决

问题根源

你把csv.writer的quotechar参数设成了和delimiter一样的逗号(,),这直接破坏了CSV的解析逻辑:

  • delimiter是用来拆分列的分隔符
  • quotechar是用来包裹包含分隔符的字段的符号
    两者设为同一个字符时,CSV阅读器会把所有逗号都识别为字段包裹符号,而非列分隔符,最终所有内容被合并到一列。

修正方案

把quotechar改为与delimiter不同的字符,比如默认的双引号("),或者直接省略该参数(csv.writer默认quotechar就是双引号)。

修正后的代码:

import csv

# 使用with语句更安全,无需手动关闭文件
with open('midi_data.csv', 'w', newline="") as f:
    writer = csv.writer(f, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
    for item in data:   
        writer.writerow(item)
        print(item)

补充说明

  • 使用with语句管理文件句柄,能自动在代码块结束后关闭文件,避免异常场景下的资源泄漏
  • csv.QUOTE_MINIMAL模式只会在字段包含delimiter或quotechar时才用quotechar包裹字段,保证输出的CSV格式规范

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 19:06:20