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')
相关推荐
非凡的世界11 分钟前
深入理解 PHP 框架里的设计模式
开发语言·设计模式·php
小龙报12 分钟前
《算法通关指南---C++编程篇(3)》
开发语言·c++·算法·visualstudio·学习方法·visual studio
凤山老林17 分钟前
排序算法:详解插入排序
java·开发语言·后端·算法·排序算法
郝学胜-神的一滴1 小时前
Effective STL 第5条:区间成员函数优先于单元素成员函数
开发语言·c++·程序人生·stl·软件工程
江太翁1 小时前
Kotlin 与 Java 互操作中常用注解
java·python·kotlin
星期天要睡觉1 小时前
深度学习——基于ResNet18迁移学习的图像分类模型
人工智能·python·分类·迁移学习
小钱c71 小时前
Python使用 pandas操作Excel文件并新增列数据
python·excel·pandas
杨福瑞1 小时前
C语言数据结构:算法复杂度(2)
c语言·开发语言·数据结构
道之极万物灭1 小时前
Go基础知识(一)
开发语言·后端·golang
AI数据皮皮侠1 小时前
中国博物馆数据
大数据·人工智能·python·深度学习·机器学习