Python保存CSV文件,Excel打开后中文乱码

情况描述

在做多语言文件处理时, 使用 pandas, 并且指定了encoding为 UTF-8, 在 IDE, Sublime等编辑器上查看都显示正常,使用Excel打开非英文字符, 例如汉字, 阿拉伯文, 希伯来文等显示乱码。

问题起因

Excel 对于非BOM (字节顺序标记)1 保存的CSV文件默认采取ASNI编码 23, pandas 默认的保存方式并没有在文件头加上 (0xEF, 0xBB, 0xBF) or \ufeff 。

解决方案

使用 pandas 保存文件的时候, 指定 encoding 为 utf_8_sig 而不是 utf_8

复制代码
df.to_csv(data_out, index=False ,encoding='utf-8-sig')
相关推荐
devnullcoffee2 分钟前
2026年Amazon Listing优化完全指南:COSMO算法与Rufus AI技术解析
人工智能·python·算法·亚马逊运营·amazon listing·cosmo算法·rufus ai技术
python机器学习ML11 分钟前
机器学习——16种模型(基础+集成学习)+多角度SHAP高级可视化+Streamlit交互式应用+RFE特征选择+Optuna+完整项目
人工智能·python·机器学习·分类·数据挖掘·scikit-learn·集成学习
Sylvia-girl13 分钟前
Lambda表达式
java·开发语言
softshow102614 分钟前
html2canvas + jspdf实现页面导出成pdf
开发语言·javascript·pdf
Java程序员威哥24 分钟前
Java应用容器化最佳实践:Docker镜像构建+K8s滚动更新(生产级完整模板+避坑指南)
java·开发语言·后端·python·docker·kubernetes·c#
资深设备全生命周期管理25 分钟前
【实时显示画面在视频上,捕获轮廓】
python
qq_21539789728 分钟前
python环境无网络环境导入依赖
开发语言·python
小范馆31 分钟前
C++ 编译方法对比:分步编译 vs 一步到位
java·开发语言·c++
垂葛酒肝汤31 分钟前
C#的const和static的问题
开发语言·c#
福娃筱欢34 分钟前
通用机KESV8R2-3节点集群缩容为2节点
java·开发语言