Pandas DataFrame导出为CSV后JSON内容出现多余双引号问题
问题解答
原因说明
pandas的to_csv()方法默认遵循CSV通用规范:
- 当字段内容包含双引号这类CSV特殊字符时,会自动在整个字段外层包裹双引号作为边界标识
- 字段内部原本的双引号会被转义为连续两个双引号,避免和外层的边界引号混淆
你存储的JSON内容本身包含大量双引号,所以触发了默认的转义逻辑,才会出现你观察到的现象。
解决方案
因为你当前仅存储单列数据,不需要处理多列分隔符的冲突问题,直接关闭to_csv()的引号包裹逻辑即可,修改代码如下:
import csv df.to_csv("sample.csv", header=None, index=None, quoting=csv.QUOTE_NONE)
如果你不想额外导入csv模块,也可以直接传入quoting参数对应的常量值3:
df.to_csv("sample.csv", header=None, index=None, quoting=3)
修改后输出的CSV文件会保留原生JSON格式,不会额外添加外层引号,也不会转义JSON内部的双引号。
内容的提问来源于stack exchange,提问作者Sam
相关产品推荐
相关产品推荐

