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')
相关推荐
人道领域2 分钟前
MyBatis-Plus为何用JavaBean映射数据库表及乐观锁实战
java·开发语言·数据库
沐知全栈开发9 分钟前
广度优先遍历与最短路径
开发语言
qianguhuaimin10 分钟前
Python作业3
开发语言·python
小兔崽子去哪了19 分钟前
XGBoost,朴素贝叶斯,特征降维,聚类算法
python·机器学习
希望之晨23 分钟前
c++ 11 学习 函数模板
linux·开发语言·c++
独自破碎E25 分钟前
BISHI73 【模板】欧拉函数计算Ⅰ ‖ 朴素求值:试除法
java·开发语言
隔壁大炮26 分钟前
08. PyTorch_张量基本创建方式
人工智能·pytorch·python
m0_5312371730 分钟前
C语言-结构体进阶
c语言·开发语言
遨游xyz31 分钟前
BM算法(Boyer-Moore)
开发语言·python
独自破碎E42 分钟前
BISHI66 子数列求积
android·java·开发语言