前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pandas(待完善) | to_csv中文乱码

pandas(待完善) | to_csv中文乱码

作者头像
努力在北京混出人样
发布2020-02-20 13:19:42
1.7K0
发布2020-02-20 13:19:42
举报
文章被收录于专栏:祥子的故事祥子的故事

起因

今天在处理工作时,需要将结果从hive读出,并保存为csv格式,然后下载。可以下载后用excel打开发现出现乱码,非我想要的。

解决方案

参考了https://blog.csdn.net/zhuzuwei/article/details/80890007的博文,在此表示感谢。

pandas官网
pandas官网

我们看下pandas官网对参数encoding 的解释,默认为utf-8,就是说 在我们不给指定时,就已经默认选择了utf-8编码格式。

这里我使用的是代码格式为utf_8_sig

代码语言:javascript
复制
df.to_csv("data.csv",encoding="utf_8_sig")

比较utf-8与utf_8_sig的差异

  • utf-8 utf-8 是以字节为编码单元,它的字节顺序在所有系统中都是一样的,没有字节序问题,因此它不需要BOM,所以当用utf-8编码方式读取带有BOM的文件时,它会把BOM当做是文件内容来处理
  • uft-8-sig uft-8-sig中sig全拼为 signature 也就是"带有签名的utf-8”,因此"utf-8-sig"读取带有BOM的"utf-8文件时"会把BOM单独处理,与文本内容隔离开

此处待完善和进一步理解。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-02-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 起因
  • 解决方案
  • 比较utf-8与utf_8_sig的差异
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档