Python字符串的编码与解码(encode与decode)
首先要搞清楚,字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。
decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串转换成unicode编码。
encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串转换成gb2312编码。
在某些IDE中,字符串的输出总是出现乱码,甚至错误,其实是由于IDE的结果输出控制台自身不能显示字符串的编码,而不是程序本身的问题。
例如:ljq.py,编码为utf8,包含内容如下:
#-*-coding:utf-8-*- s='中文' print type(s) #查看s的字符类型 print s s.decode('utf8') #解码utf8,默认的编码方式是unicode s.decode('gbk', "ignore") #解码utf8,忽略其中有异常的编码,仅显示有效的编码 s.decode('gbk', 'replace') print type(s) print ss.encode('gb2312') ##编码为utf8 print type(s) print s
ljq.py编码必需与s.decode('utf8')指定的编码一致,不然会抛出解码异常信息,可以通过s.decode("gbk", "ignore")或s.decode("gbk", "replace")来解决。
另外对于一些包含特殊字符的编码,直接解码可能会报错,可以使用对于的参数来设置。如:
s.decode("utf-8", "ignore") 忽略其中有异常的编码,仅显示有效的编码
s.decode("utf-8", "replace") 替换其中异常的编码,这个相对来可能一眼就知道那些字符编码出问题了。
从unicode转str,被看做是把一个信息文本编码为二进制字节流的过程,要用encode方法
Python字符串的编码与解码(encode与decode)相关推荐
- 使用Python字符串的编码与解码方法实现信息加解密
代码思路很简单,字符串的encode()方法可以将其编码为字节串,在生成的字节串中插入干扰字节后无法正常解码,要想还原信息,必须清楚干扰字节的位置并删除后再使用decode()解码.本文代码重点在于演 ...
- 二十六、python中字符串的编码与解码,utf-8编码与解码,gbk编码与解码
在python中,我们经常会使用到字符串的编码与解码,推荐你在写代码的过程中都用utf-8编码解码 1.utf-8编码用函数encode,例子,编码英文跟数字的时候,他只是在前面多了个b,编码中文的时 ...
- Python字符串与编码
Python字符串与编码 计算机对文本进行编码的方式 ASCII码 由于计算机是美国人发明的,因此,最早只有127个字母被编码到计算机里,也就是大小写英文字母.数字和一些符号,这个编码表被称为ASCI ...
- decode函数python在哪里_Python基础知识——encode和decode函数
以前我们介绍过,Python2.x中默认的编码的基础类型是unicode编码的类型,在Python3.x才转化为基于unicode的字符串. 那么我们在Python2.x的学习中就会遇到各种各样的编码 ...
- Python入门--字符串的编码与解码
#字符串的编码转换 #编码与解码的方式 #编码:将字符串转换为二进制数据(bytes) #解码:将bytes类型的数据转换成字符串类型 ################################ ...
- python中的编码和解码_Python中“is”和“==”之间的区别,以及编码和解码,与
Python中'is'和'=='的区别,以及编码与解码 Python中'=='和'is'的区别 (1)Python中'==' Python中'==比较变量的值,如果值相同返回True,如果不同返回Fl ...
- python编码问题之encode、decode、codecs模块
原文链接 #先说说编解码问题 编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码. Eg: ...
- 【Python笔记】Python 中的编码与解码
本文记录 Python2.x 和 Python3.x 中关于编码和解码的问题. 文章目录 1. 一些基本的概念 2. 编码格式 3. 编码和解码 4. Python3 的默认编码 1. 一些基本的概念 ...
- Python 中的编码与解码
转载来源:https://zhuanlan.zhihu.com/p/38293267 1.一些基本的概念 比特 / bit:计算机中最小的数据单位,是单个的二进制数值 0 或 1 字节 / byte: ...
最新文章
- 上市3年市值缩水9成,AI教育第一股流利说谋求私有化
- SharePoint 2013 搭建负载均衡(NLB)
- 基于 DDD 设计并实现模块化单体应用
- Android切换到主线程
- 开箱即用的微服务框架 Go-zero(进阶篇)
- android 用webView作为编辑器 各种问题
- 小雨的矩阵(DFS三参数模板题)
- 【博弈论】bzoj1115 [POI2009]石子游戏Kam
- 利用SQL语句自动生成序号的两种方式
- 宝塔更换域名_搭建小程序之BT宝塔面板的操作使用教程
- matlab里用simulink仿真教程,Matlab-Simulink仿真教程课件.ppt
- pdf加水印怎么加?
- windows10桌面壁纸的储存地址在哪里
- BugKu CTF(杂项篇MISC)---哥哥的秘密
- [uboot]MLO和uboot-spl.bin, uboot.img和uboot.bin
- eclipse中servers(服务器)的配置
- 【MySQL】按各科成绩进行排序,并显示排名
- 为什么现在那么多公司都要招聘测试开发?测试开发是什么?
- 个人关于面试的一些总结
- pinctrl子系统初始化RGB灯
热门文章
- python爬虫开发 从入门到实战_python网络爬虫从入门到实战开发
- oracle定时关闭job,Oracle 定时JOB
- python处理json数据_python处理json格式的数据
- python程序设计之文件_Python程序设计之文件操作(2)
- jsp文件能转换html吗,html怎么转换成jsp
- PCM设备在电网系统中的应用介绍
- 串口转换器的工作方式及通讯模式介绍
- 【渝粤教育】国家开放大学2018年秋季 1133t文献检索 参考试题
- 【渝粤教育】21秋期末考试计量经济学10551k1
- 【渝粤教育】广东开放大学 地基与基础 形成性考核 (27)