python之03编码学习

编码介绍

 

ASCII :只能存英文和拉丁字符,一个字符占一个字节,8位

在中国的发展:

    gb2312:存6700多个中文      1980年

    gbk1.0 :存2万多字符             1995年

    gb18030:存27000中文          2000年

 

在国际上的发展:

     unicode:utf-32:一个字符占4个字节

     unicode:utf-16:一个字符占两个字节

     unicode:utf-8  :一个英文用ascii码来村,一个中文占3个字节。

备注:unicode更像是一种标准,他的具体实现形式有utf-32,utf-16和utf-8。在python里默认的unicode中的utf-16  

 

python3 encode 和 decode

# Author:Administrator
# date: 2019/1/24
import sys

print(sys.getdefaultencoding())  # 获取默认的文件编码是utf-8
# 在python3里,文件中字符的默认编码是unicode
s = "茹月"
print(s)
s_to_gbk = s.encode("GBK")  # encode 在python3里会把其转成GBK对应的字节码
print(s_to_gbk)

s_to_unicode = s_to_gbk.decode("GBK")  # decode 在python3里会把GBK对应的字节码转成unicodde对应的字符串。
print(s_to_unicode)

 

python2 encode 和 decode

见下图

python2编码和解码介绍

 

posted @ 2019-01-24 15:15  hympio  阅读(177)  评论(0)    收藏  举报