Python 的 encode 和 decode

记一下,备忘。

Python 使用unicode,所以无论encode还是decode都是针对unicode来说的。

encode:把unicode转为其他编码(gbk、utf8、gb2312等)。

decode:把其他编码转为unicode码。

比如字符串a为gb2312,想转为utf8:

a.decode(gb2312).encode(utf8)
时间: 2024-11-08 09:59:47

Python 的 encode 和 decode的相关文章

Python之encode与decode浅析

 Python之encode与decode浅析 在 python 源代码文件中,如果你有用到非ASCII字符,则需要在文件头部进行字符编码的声明,声明如下: # code: UTF-8 因为python 只检查 #.coding 和编码字符串,为了美观等原因可以如下写法: #-*-coding:utf-8-*- 常见编码介绍: GB2312编码:适用于汉字处理.汉字通信等系统之间的信息交换. GBK编码:是汉字编码标准之一,是在 GB2312-80 标准基础上的内码扩展规范,使用了双字节编码.

python编码encode和decode

计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等. unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换成unicode编码,然后转化成子编码,例如utf8可以转成unicode,再转gbk,但不能直接从utf8转gbk 所以,python中就有两个方法用来解码(decode)与编码(encode),解码是子编码转unicode,编码就是unicode转子编码 1.编码 #encoding=utf-8

python之encode和decode编码

u = '中文' str3 = u.encode('utf-8') # 以utf-8编码对u进行编码,获得bytes类型对象 print(str3) u2 = str3.decode('utf-8') # 以utf-8编码对str3进行解码,获得str类型对象 print(u2) #打印结果如下: b'\xe4\xb8\xad\xe6\x96\x87' 中文 原文地址:https://www.cnblogs.com/ludundun/p/11509298.html

Python encode和decode

最近对于Python2和Python3的编码和解码比较困惑,在知乎上面咨询了依云大神后对Python的编码和解码逐渐清晰起来, 在此把个人理解结合大神的指点分享一下,如下内容仅代表个人观点,不排除有错误! 首先需要明白encode == 编码,decode == 解码,encode就是把逻辑上的字符变成二进制数据,以便存储和传输. (至于编码前和解码后的字符是怎么存储的,是Python的内部实现,只有 Python 自己需要操心,你不用管; 就像你不用管整数在 Python 内存里长什么样一样,

Python乱码,编码,repr,encode,decode探究

#encoding:utf-8 #用命令行执行 s = '百度' print s # 输出环境为gbk,编码为utf-8,输出乱码 print s.decode('utf-8') # => 发现输出环境为gbk,自动转换 print s.decode('utf-8').encode('utf-8') # 输出环境为gbk,编码为utf-8,输出乱码 print s.decode('utf-8').encode('gbk') # 输出环境为gbk,编码为gbk,正常输出 # s = 0xF2193

Python 字符串的encode与decode

python的str,unicode对象的encode和decode方法 python中的str对象其实就是"8-bit string" ,字节字符串,本质上类似java中的byte[]. 而python中的unicode对象应该才是等同于java中的String对象,或本质上是java的char[]. 对于 s="你好" u=u"你好" 1. s.decode方法和u.encode方法是最常用的, 简单说来就是,python内部表示字符串用un

Python字符串的encode与decode研究心得——解决乱码问题

转~Python字符串的encode与decode研究心得——解决乱码问题 为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“/xe4/xb8/xad/xe6/x96/x87”的形式?为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题. 字符串在Python内部的表示是unico

python的str,unicode对象的encode和decode方法

python的str,unicode对象的encode和decode方法 python中的str对象其实就是"8-bit string" ,字节字符串,本质上类似java中的byte[]. 而python中的unicode对象应该才是等同于java中的String对象,或本质上是java的char[]. 对于 s="你好" u=u"你好" s="你好" u=u"你好" 1. s.decode方法和u.enc

python encode和decode函数说明【转载】

python encode和decode函数说明 字符串编码常用类型:utf-8,gb2312,cp936,gbk等. python中,我们使用decode()和encode()来进行解码和编码 在python中,使用unicode类型作为编码的基础类型.即 decode              encode str ---------> unicode --------->str u = u'中文' #显示指定unicode类型对象u str = u.encode('gb2312') #以