Python中文编码那些事


Posted in Python onJune 25, 2014

首先,要明白encode()和decode()的区别

 encode()的作用是将Unicode编码的字符串转换为其他编码格式。

例如: st1.encode("utf-8")  这句话的作用是将Unicode编码的st1编码为utf-8编码的字符串

decode()的作用是把其他编码格式的字符串转换成Unicode编码的字符串。

例如: st2.decode("utf-8") 这句话的作用是将utf-8编码的字符串st2解码为Unicode编码的字符串

第二,除Unicode编码的字符串以外,任何一种编码的字符串要想转换为其他编码格式,必须先解码后编码

非Unicode编码--> Unicode编码-->非Unicode编码

例如,utf-8编码的字符串st想要转换为gbk编码的字符串,必须经过以下步骤:

st=st.decode("utf-8") #解码为Unicode编码

st=st.encode("gbk")  #从Unicode编码编码为gbk编码

第三,我们经常使用的utf-8编码还分为有BOM的和无BOM的。

第四:关于json文件的中文编码。用Python读取Json文件时经常用到json.load()函数,该函数对json文件的格式是有要求的

1)json文件是utf-8 without BOM编码的,那么可以直接用json.load(filename)函数读取json文件的内容

2)json文件是utf-8 with BOM编码的,不能用json.load()函数读取,json.load()不能正确识别

3)json文件时其他编码的,比如gbk, 要把json文件的编码格式作为一个参数传给json.load():

eg. json.load(filename,"gbk")

第五,怎么查看并且设置自己文件的编码呢?

介绍一个个人比较喜欢的工具"Nodtepad++",随便一个软件管家里就与一键安装。

用这个工具你可以方便的查看自己的文件的当前编码,并可以轻松转换成任意其他编码格式

Python 相关文章推荐
python抓取网页内容示例分享
Feb 24 Python
Python中使用HTMLParser解析html实例
Feb 08 Python
python3中set(集合)的语法总结分享
Mar 24 Python
Python基于SMTP协议实现发送邮件功能详解
Aug 14 Python
Python Django的安装配置教程图文详解
Jul 17 Python
python中类的输出或类的实例输出为这种形式的原因
Aug 12 Python
Python封装成可带参数的EXE安装包实例
Aug 24 Python
详解基于python的多张不同宽高图片拼接成大图
Sep 26 Python
python图片指定区域替换img.paste函数的使用
Apr 09 Python
基于python SMTP实现自动发送邮件教程解析
Jun 02 Python
通过cmd进入python的步骤
Jun 16 Python
python中的插入排序的简单用法
Jan 19 Python
教你如何在Django 1.6中正确使用 Signal
Jun 22 #Python
python抓取网页时字符集转换问题处理方案分享
Jun 19 #Python
python在linux中输出带颜色的文字的方法
Jun 19 #Python
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
Jun 18 #Python
win7 下搭建sublime的python开发环境的配置方法
Jun 18 #Python
Python写的贪吃蛇游戏例子
Jun 16 #Python
Python中的yield浅析
Jun 16 #Python
You might like
一个用于网络的工具函数库
2006/10/09 PHP
php文章内容分页并生成相应的htm静态页面代码
2010/06/07 PHP
php eval函数用法总结
2012/10/31 PHP
如何使用PHP计算上一个月的今天
2013/05/23 PHP
php var_export与var_dump 输出的不同
2013/08/09 PHP
php中mysql操作buffer用法详解
2015/03/19 PHP
php实现转换html格式为文本格式的方法
2016/05/16 PHP
jQuery对表单元素的取值和赋值操作代码
2011/05/19 Javascript
jquery表单验证使用插件formValidator
2012/11/10 Javascript
extjs ColumnChart设置不同的颜色实现代码
2013/05/17 Javascript
最全的Javascript编码规范(推荐)
2016/06/22 Javascript
jQuery-mobile事件监听与用法详解
2016/11/23 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
JavaScript门道之标准库
2018/05/26 Javascript
JQuery常用选择器功能与用法实例分析
2019/12/23 jQuery
python实现复制整个目录的方法
2015/05/12 Python
一波神奇的Python语句、函数与方法的使用技巧总结
2015/12/08 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
2017/09/30 Python
python中print()函数的“,”与java中System.out.print()函数中的“+”功能详解
2017/11/24 Python
Python常见排序操作示例【字典、列表、指定元素等】
2018/08/15 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
Python设计模式之模板方法模式实例详解
2019/01/17 Python
python装饰器原理与用法深入详解
2019/12/19 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
Python用input输入列表的实例代码
2020/02/07 Python
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
英国日常交易网站:Wowcher
2018/09/04 全球购物
Internal修饰符有什么含义
2013/07/10 面试题
暑期实践思想汇报
2014/01/06 职场文书
高三毕业寄语
2014/04/10 职场文书
捐书活动总结
2014/05/04 职场文书
消防志愿者活动方案
2014/08/23 职场文书
企业培训简报范文
2015/07/20 职场文书
合作协议书格式范本
2016/03/21 职场文书
辞职信怎么写?你都知道吗?
2019/06/24 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书