编码进阶
"""
Python3中有两种数据类型(注意是数据类型而不是编码方式):str和bytes。str类型存储unicode数据,用于向人展示数据,既我们所说的明文。bytes类型用于存储字节数据,用于计算机存储和传输
"""
![]()
# s1 = '中国'
# str类型用于向人类展示,计算机不认识,想要存储和网络传输必须先将str转化成bytes类型;
# s2 = s1.encode('utf-8') # utf-8中转化成bytes类型,一个中文==3bytes;
# print(s2)
# 用什么编码的就用什么解码
# s3 = s2.decode('utf-8')
# print(s3)
# 同理GBK编码也是
# ------------------------
# gbk与utf-8的转换
# utf-8<---->unicode<---->gbk
s1 = '中国'
# 首先将字符串编码成bytes类型才能传输
a = s1.encode('utf-8') # 发送bytes类型
# 接收者首先需要将a解码成unicode编码(万国码)
a1 = a.decode('utf-8')
# 在编码成gbk格式用于存储
a2 = s1.encode('gbk')
# 解码gbk查看
a3 = a2.decode('gbk')
print(a3)
View Code