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')
相关推荐
2401_867623982 分钟前
如何设置用户默认表空间_ALTER USER DEFAULT TABLESPACE
jvm·数据库·python
ftpeak2 分钟前
LangGraph Agent 开发指南(12~函数式 API)
人工智能·python·ai·langchain·langgraph
枕星而眠4 分钟前
C++ 核心语法精讲:auto / 模板 / 命名空间 / 动态内存 从用法到面试
开发语言·c++·面试
yivifu4 分钟前
跟水印杠上了——顺便巩固Tkinter的GUI编程
python·opencv·tkinter·去水印
2301_803934617 分钟前
html标签怎样划分页面区域_section与div的区别【介绍】
jvm·数据库·python
沐知全栈开发10 分钟前
jEasyUI 创建异步提交表单
开发语言
知学致远11 分钟前
Python基础语法_01-注释、输入输出、变量
python
码完就睡12 分钟前
C语言——结构体的内存存储规则
c语言·开发语言
敲代码的瓦龙12 分钟前
Android?广播!!!
android·java·开发语言·android-studio
沈浩(种子思维作者)12 分钟前
物理的本质是数学,还是数学只是描述物理的方便之语?
人工智能·python·算法