----encode(encoding="utf-8", errors="strict")方法该方法将字符串(str)转换为某种编码的字节对象。
参数encoding默认为utf-8(亦即utf_8或utf8),表示默认转换为utf-8编码的字节对象
---decode(encoding="utf-8", errors="strict")方法,该方法将字节对象解码为原始的字符串。
>>> u = '中文' # 指定字符串类型对象u
>>> str1 = u.encode('gb2312') # 以gb2312编码对u进行编码,获得bytes类型对象
>>> print(str1)
b'xd6xd0xcexc4' GB2312
>>> str3 = u.encode('utf-8') # 以utf-8编码对u进行编码,获得bytes类型对象
>>> print(str3)
b'xe4xb8xadxe6x96x87' utf8
>>> u1 = str1.decode('gb2312') # 以gb2312编码对字符串str进行解码,获得字符串类型对象
>>> print('u1')
'中文'
字节数 : 2;编码:GB2312 字节数 : 2;编码:GBK
字节数 : 3;编码:UTF-8 字节数 : 4;编码:UTF-16
在bytes和str的互相转换过程中,实际就是编码解码的过程,必须显式地指定编码格式。
u='中文'
s = bytes(u,encoding='utf-8')
print(s)
b'xe4xb8xadxe6x96x87'
s1=str(s)
print(s1)
b'xe4xb8xadxe6x96x87'
s2 = str(s,encoding='utf-8')
print(s2)
中文
u='中文'
s = bytes(u,encoding='gb2312')
print(s)
b'xd6xd0xcexc4'
s2 = str(s,encoding='gb2312')
print(s2)
中文