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

Pandas写入CSV时无法保留带引号的空格内容问题

解决Pandas写入CSV时丢失带引号空格的问题

问题根源

你读取CSV时用了skipinitialspace=True,虽然能正确识别带逗号的引号字段,但写入时Pandas默认仅给包含分隔符、换行符等特殊字符的字段加引号。单个空格不属于特殊字符,因此原数据里的" "会被写成 ,,丢失外层引号。

解决方案

通过指定写入时的引号规则,让非数值字段强制被引号包裹,包括单个空格的字段。

步骤1:导入必要模块

import pandas as pd
import csv

步骤2:调整读取代码(可选)

如果不需要跳过字段开头的空格,可去掉skipinitialspace=True,避免意外处理引号内的空格:

f = pd.read_csv(mypath + file, quotechar='"')

若需保留skipinitialspace=True处理其他字段,可继续使用原读取代码:

f = pd.read_csv(mypath + file, skipinitialspace=True, quotechar='"')

步骤3:修改写入代码

添加quoting=csv.QUOTE_NONNUMERIC参数,让所有非数值字段自动加引号:

f.to_csv(mypath + file, index=False, quoting=csv.QUOTE_NONNUMERIC, quotechar='"')

效果验证

修改后写入的CSV会保留原格式:

Column 1,Column 2,Column 3,Column 4
123," ",ABCD,"This, that, and this"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 01:05:19