在学习Python的过程中,脑子总是被encode() 和decode() 函数搞得乱七八糟,为防止以后忘记,写在此处,方便以后查阅。
str.encode(encoding,error)
主要是对字符串类型对象以指定的编码方式进行编码,有两个参数:
- encoding是指编码方式,默认方式为UTF-8
- error是设置不同的错误处理方案,默认值为 strict
对字符串类型对象编码后,就变为了二进制类型对象
s1='这是我的csdn!'
print(type(s1.encode()),s1.encode())
输出结果如下:
<class 'bytes'> b'\xe8\xbf\x99\xe6\x98\xaf\xe6\x88\x91\xe7\x9a\x84csdn!'
str.decode(encoding,error)
主要以指定的编码方式解码字符串,也有两个参数:
- encoding 解码方式,默认方式为UTF-8
- error 设置不同的错误处理方式,默认值为strict
解码后是字符串类型对象
b1=b'121212122'
print(type(b1.decode()),b1.decode('utf-8'))
输出结果:
<class 'str'> 121212122