【问题】

python输出的csv文件用excel打开,里面的中文会变成乱码,但用window下的记事本或mac下的numbers打开就正常显示。

原因是python输出的文件是utf-8编码写入的,excel默认以gbk方式读取,导致乱码发生。

【解决方法1】文件产出时encoding设置为utf-8-sig

用excel打开csv时,excel会先检查文件的第一个字符,来了解这个文件是什么编码方式,如果这个字符是BOM,excel就知道用utf-8的方式打开这个文件。python自带了处理BOM的编码方式uft-8-sig,因此只需要在文件产出时将encoding设置为utf-8-sig。

如果文件不是由python产出的,只需要以utf-8方式读入再以utf-8-sig方式存储即可

【解决方法2】懒人法,适用只含简体中文的文件

用记事本打开,点击另存为,右下角编码方式选择“ANSI”,这个过程是把这个文件改成gbk编码格式,excel就是默认用gbk方式打开的。

对编码格式一窍不通的可以阅读以下网页

【简单总结】:

1. 首先需要了解 字符集 和 字符编码 两个概念,字符集定义了字符和二进制的一一对应关系,字符编码规定了如何将字符的编号存储到计算机中。

2. Unicode是字符集,包含了全球文字的唯一编码,utf-8是编码方式,将unicode以某种方式存储到计算机中。

3. 有些字符集和编码是结合在一起的,称作字符集还是编码都无所谓,比如ASCII,GBK

4. ANSI是各个国家地区不同扩展编码方式的总称,互不兼容(可以看出来通用性没有utf好)

5. 不同编码方式在转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。

python将excel转csv乱码_python解决csv文件用excel打开乱码问题相关推荐

  1. java碰到乱码如何解决方法_如何处理java的乱码

    为什么说乱码是中国程序员无法避免的话题呢?这个首先要从编码机制上说起,大家都是中文和英文的编码格式不是一样,解码也是不一样的! 如果中国的程序员不会遇到乱码,那么只有使用汉语编程.汉语编程是怎么回事, ...

  2. python 写入csv 文件显示乱码_python 写入csv乱码问题解决方法

    需求背景 最近为公司开发了一套邮件日报程序,邮件一般就是表格,图片,然后就是附件.附件一般都是默认写到txt文件里,但是PM希望邮件里的附件能直接用Excel这种软件打开,最开始想保存为Excel,但 ...

  3. python安装csv出错_python处理csv文件问题解决贴

    实际工作中,碰到这么个问题:有个软件跑在linux系统上,其中用到一个数据库是csv格式的,但要向这个数据库添加600行新的数据,数据源同样是一个csv格式的文件. 有了目标,开始干活.首先想到的是, ...

  4. python亿级mysql数据库导出_Python之csv文件从MySQL数据库导入导出的方法

    Python之csv文件从MySQL数据库导入导出的方法 发布时间:2020-10-26 07:39:02 来源:脚本之家 阅读:53 作者:张行之 Python从MySQL数据库中导出csv文件处理 ...

  5. python csv使用_Python基于csv模块实现读取与写入csv数据的方法

    本文实例讲述了Python基于csv模块实现读取与写入csv数据的方法.分享给大家供大家参考,具体如下: 通过csv模块可以轻松读取格式为csv的文件,而且csv模块是python内置的,不需要下载就 ...

  6. python excel合并相同数据_python pandas合并相同的excel

    背景:孩子她妈需要手动合并30个格式一样的excel 如下5个格式一样的表测试 每个表的测试数据为,格式一样 步骤如下:通过pandas读取每个excel到dataframe 通过pandas将这些d ...

  7. ajax后台返回数据中文乱码_解决Jmeter返回值显示中文乱码 的三种方法及设置随机动态参数(非原创侵删)...

    一.Jmeter返回值显示中文乱码解决方法 第一种解决方法: 1. 点击线程组--添加--后置处理器--BeanShell后置处理程序 2.点击BeanShell后置处理程序,编写:prev.setD ...

  8. python安装好后打不开_解决安装pyqt5之后无法打开spyder的问题

    解决安装pyqt5之后无法打开spyder的问题 运行某demo时候按照提示安装了pyqt5,然后通过命令行去打开spyder时就报这个错: 错误的说法分别有: 1.anaconda里面已经装了pyq ...

  9. python docx 合并文档 图片_Python检查Word文件中包含特定关键字的所有页码

    推荐教材:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社图书详情:配套资源:用书教师可以联系董老师获取教学大纲.课件.源码.教案.考试系 ...

最新文章

  1. 海思osd+freetype+SDL+SDL_ttf编译成功后,Makefile的编写
  2. reid笔记 yolov5 deepsort
  3. AtomicInteger
  4. 数据结构快速回顾——栈
  5. matlab如何绘制三维隐函数?
  6. CV之Image Caption:Image Caption算法的相关论文、设计思路、关键步骤相关配图之详细攻略
  7. ER图和关系模型到MySQL数据库表
  8. python 拟牛顿法 求非线性方程_有限元简单科普之——改进的欧拉法
  9. Python中的list/tuple/dict/set数据类型详解
  10. python图片压缩算法_Optipng,jpegoptim应用,用python实现图片压缩,让你的网站变得更快...
  11. 3.Ubuntu/Deepin下安装Monaco/Menlo字体
  12. 计算机无法安装cad怎么办,电脑安装AutoCAD提示未正常卸载无法安装如何解决
  13. 太阳系八大行星直径、质量、与太阳距离参数
  14. php mocking,测试模拟器 Mocking
  15. 人工智能一路狂飙现隐忧 过高预期恐催泡沫
  16. 福昕阅读器无法添加书签
  17. 嵌入式Linux的两种I2C驱动方式
  18. Android 9/10 Launcher3 适配出现的问题修改
  19. mysql jstorm_jstorm进阶-ack机制及KafkaSpout
  20. 数据结构课程设计---商品销售管理系统C/C++

热门文章

  1. 计算机应用基础职业技能目标,《计算机应用基础》课程标准4
  2. 全面提升易用性:OpenClusterManagement 0.7 版本发布
  3. 非线性方程组数值求解算法——MATLAB源码
  4. 使用Google浏览器截屏
  5. React非受控组件
  6. 6.19日更新下 饿了么/美团脚本相关问题专栏
  7. 阿里云服务器apache/2.4.27(Unix)配置二级域名 ProxyPassMatch
  8. STM32固件库编程-----点亮led小灯
  9. 【应用】博图SCL语言之抢答器应用
  10. linux rdesktop 远程,Linux下远程桌面的使用之rdesktop