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

调用csv.writerows生成空白CSV文件,请求排查问题原因

解决CSV文件写入后空白的问题

嘿,我来帮你排查下这个CSV写入后空白的问题,通常有几个常见原因,咱们一个个来看:

1. 文件未正确关闭,缓冲区数据未写入磁盘

你直接用open()打开文件后,没有主动关闭文件,也没使用上下文管理器(with语句)。Python的文件操作会把数据先存在内存缓冲区里,只有当文件关闭或者缓冲区满了才会写到磁盘上。如果程序结束前没关闭文件,缓冲区里的数据就丢失了,导致文件空白。

修复方案:用with语句来管理文件,它会自动在代码块结束后关闭文件,确保数据写入:

import csv

# 先确保你的list_of_rows已经正确填充了数据
with open("./inmates.csv", "w", newline='', encoding='utf-8') as outfile:
    writer = csv.writer(outfile)
    writer.writerows(list_of_rows)

2. list_of_rows本身是空的

如果你的循环逻辑有问题(比如循环没执行、list_of_cells没正确生成或添加到数组里),导致list_of_rows是空列表,那写入自然不会有内容。

排查方法:在调用writerows()之前加一行打印,确认数组内容:

print(list_of_rows)  # 看看输出是不是你预期的多行数据

如果输出是空的,就得回头检查你的循环逻辑,比如是不是循环条件不成立,或者每次循环时list_of_cells没有被正确append到list_of_rows里。

3. Python 3中误用了二进制模式wb

Python 3里csv模块推荐使用文本模式(w)而不是二进制模式(wb),并且指定newline='',这样模块会自动处理不同操作系统的换行符问题。如果用wb模式,可能会导致写入异常或者数据无法正确保存。

注意:如果是Python 2,wb是正确的,但Python 3一定要用文本模式哦。

按照上面的方法排查,应该就能解决文件空白的问题啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:20:32