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 随机生成中文验证码的实例代码
Mar 20 Python
Python简单遍历字典及删除元素的方法
Sep 18 Python
基于Python闭包及其作用域详解
Aug 28 Python
python实现分页效果
Oct 25 Python
Python语言描述机器学习之Logistic回归算法
Dec 21 Python
Python 获取主机ip与hostname的方法
Dec 17 Python
Python数学形态学实例分析
Sep 06 Python
详解python播放音频的三种方法
Sep 23 Python
Python random库使用方法及异常处理方案
Mar 02 Python
Python3 ffmpeg视频转换工具使用方法解析
Aug 10 Python
python 解决Windows平台上路径有空格的问题
Nov 10 Python
python绘制高斯曲线
Feb 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
php array_map array_multisort 高效处理多维数组排序
2009/06/11 PHP
PHP Session_Regenerate_ID函数双释放内存破坏漏洞
2011/01/27 PHP
php set_time_limit()函数的使用详解
2013/06/05 PHP
解析Linux下Varnish缓存的配置优化
2013/06/20 PHP
php获取文件后缀的9种方法
2016/03/22 PHP
PHP快速推送微信模板消息
2017/04/14 PHP
编写高性能的JavaScript 脚本的加载与执行
2010/04/19 Javascript
js中数组(Array)的排序(sort)注意事项说明
2014/01/24 Javascript
javascript 实现子父窗体互相传值的简单实例
2014/02/17 Javascript
教你如何在Node.js中使用jQuery
2016/08/28 Javascript
利用Angularjs和bootstrap实现购物车功能
2016/08/31 Javascript
jQuery中的siblings()是什么意思(推荐)
2016/12/29 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
详解基于DllPlugin和DllReferencePlugin的webpack构建优化
2018/06/28 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
[01:46]新英雄登场
2019/09/10 DOTA
解决Ubuntu pip 安装 mysql-python包出错的问题
2018/06/11 Python
Python 爬取携程所有机票的实例代码
2018/06/11 Python
Python 获取中文字拼音首个字母的方法
2018/11/28 Python
对python for 文件指定行读写操作详解
2018/12/29 Python
python实现祝福弹窗效果
2019/04/07 Python
浅谈Python 参数与变量
2020/06/20 Python
浅谈python出错时traceback的解读
2020/07/15 Python
python爬虫使用正则爬取网站的实现
2020/08/03 Python
html5 figure和figcaption的使用方法
2018/09/10 HTML / CSS
台湾菁英交友:结识黄金单身的台湾人
2018/01/22 全球购物
美国价格实惠的在线眼镜网站:Zeelool
2020/12/25 全球购物
自荐书范文
2013/12/08 职场文书
导师评语大全
2014/04/26 职场文书
活动总结书
2014/05/08 职场文书
自查自纠工作情况报告
2014/10/29 职场文书
2014年大学班长工作总结
2014/11/14 职场文书
经济纠纷起诉状
2015/05/20 职场文书
人生感悟经典句子
2019/08/20 职场文书
励志语录:你若不勇敢,谁替你坚强
2019/11/08 职场文书
pytorch中的model=model.to(device)使用说明
2021/05/24 Python