欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

关于python 字符编码的一些认识

程序员文章站 2022-06-20 23:46:02
使用python,是因为他的美; 以下说明常用的字符编码在python中的应用: s = "中国a" print repr(s) #输出原始字符 是以十六...

使用python,是因为他的美;
以下说明常用的字符编码在python中的应用:
s = "中国a"
print repr(s) #输出原始字符 是以十六进制表示
# '\xd6\xd0\xb9\xfaa'
#ansi字符串我们最熟悉,英文占一个字节,汉字2个字节,以一个\0结尾,常用于txt文本文件
#unicode字符串,每个字符(汉字、英文字母)都占2个字节,以2个连续的\0结尾
#utf-8英文1个字节,中文3个字节
s1 = s.decode('gbk') //以十六进制存储就是已经编过码的了 所以要解码
#u'\u4e2d\u56fda'
s2 = s1.encode('utf-8') //对unicode字符进行编码,编成utf-8格式
#'\xe4\xb8\xad\xe5\x9b\xbda'
s3 = s2.decode('utf-8') //既然是用utf-8格式编码,当然要用utf-8格式进行解码
#u'\u4e2d\u56fda'
s4 = s3.encode('gbk') //最后当然是编码成常用的中文编码格式啦
#'\xd6\xd0\xb9\xfaa'

#其实说到底是一个表达式而已
print s.decode('gbk').encode('utf-8').decode('utf-8').encode('gbk')
#中国a

所以,python 的字符编码方式其实很简单,但有时候总是误入歧途,嘿
现做以上总结,望今后能铭记于心,不犯同类错误