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')
相关推荐
请叫我聪明鸭1 分钟前
基于 marked.js 的扩展机制,创建一个自定义的块级容器扩展,让内容渲染为<div>标签而非默认的<p>标签
开发语言·前端·javascript·vue.js·ecmascript·marked·marked.js插件
仍然.12 分钟前
Java---反射、枚举、lambda表达式 和 泛型进阶
java·开发语言
deephub14 分钟前
使用 tsfresh 和 AutoML 进行时间序列特征工程
人工智能·python·机器学习·特征工程·时间序列
Zsy_05100320 分钟前
【C++】类和对象(二)
开发语言·c++
Access开发易登软件20 分钟前
数据处理中的两大基石:何时选择Excel,何时考虑Access
数据库·信息可视化·excel·vba·access
0思必得021 分钟前
[Web自动化] Selenium中Select元素操作方法
前端·python·selenium·自动化·html
Duang007_25 分钟前
【万字学习总结】API设计与接口开发实战指南
开发语言·javascript·人工智能·python·学习
小北方城市网27 分钟前
JVM 调优实战指南:从问题排查到参数优化
java·spring boot·python·rabbitmq·java-rabbitmq·数据库架构
一叶星殇27 分钟前
C# .NET 如何解决跨域(CORS)
开发语言·前端·c#·.net
Elieal28 分钟前
Java项目密码加密实现详解
java·开发语言