二进制
--->ASCII:只能存英文和拉丁字符,一个字符占一个字节,8位
------->gb2312:只能6700多个中文,1980年
----------->gbk1.0 能存两万多个字符,1995年
-------------->gb18030 27000中文, 2000年
---------->unicode: utf-32: 一个字符占4个字节
utf-16:一个字符占2个字节或2个以上 65535
utf-8: 一个英文用ASCII码来存,一个中文占3个字节
s='I am 特斯拉!'
s2gbk=s.encode('gbk')#按照gbk的规则编码 为byte字符串
print(s)
print(s2gbk) #编码为byte字符串
s2gbk2=s2gbk.decode('gbk')#按照gbk的规则解码
print(s2gbk2)
s1=s.encode('utf8') #按照utf8规则编码为byte字符串
print(s1)
s2=s1.decode('utf8')#按照utf8规则解码
print(s2)