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

Python写入CSV后Excel列显示混乱,如何解决?

解决CSV在Excel中挤入同一列的问题

问题根源分析

你的代码存在两个关键问题:

  1. 路径转义错误:Windows路径中的反斜杠\是Python的转义字符,比如\U会被解析为Unicode转义序列,导致文件路径识别异常。
  2. 缺少必要参数配置:未指定newline=''和合适的编码,可能导致CSV的分隔符被Excel错误解析,或文件格式异常。

修正后的代码

import csv

# 使用原始字符串避免转义问题,同时指定newline=''和utf-8-sig编码
with open(r'C:\Users\admin\Documents\scraping\ddd.csv', 'w', newline='', encoding='utf-8-sig') as output_file:
    file = csv.writer(output_file)
    file.writerow(["name","age","N.W"])

关键修改说明

  • 原始字符串路径:在路径前加r,让Python将路径中的反斜杠视为普通字符,避免转义错误。
  • newline='':阻止Python自动转换换行符,确保CSV文件的换行符符合Excel的解析要求,避免出现空行或格式混乱。
  • encoding='utf-8-sig':带BOM的UTF-8编码,让Excel能正确识别文件编码,避免分隔符被误判。

额外排查点

如果修改后仍有问题,检查Excel的区域设置:

  • 部分非英文区域的Excel默认用分号作为CSV分隔符,此时需要显式指定分隔符:
file = csv.writer(output_file, delimiter=';')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 22:22:41