python3中的字符串的编码和解码
python3中存在“str”类型和“bytes”类型
计算机中的数据都是二进制类型来存在的。
1、python中的字符与字符集
- 字符是各种文字和符号的脏成,包括各个国家文字、标点符号、图形符号、数字等。
- 字符集是多个字符的集合
- 字符集包括:ASCII字符集、GB2312字符集、GB18030字符集(gbk)、Unicode字符集
- ASCII字符集是1个字节,而Unicode通常是2个字节。
- UTF-8是Unicode的实现方式之一,UTF-8是一种变长的编码方式,可以是1/2/3个字节
2、字符串的编解码
在python中,编码解码其实是不同编码系统间的转换,默认情况下,转换目标是Unicode
编码:unicode→str
bytes.decode()
解码:str→unicode,其中str指的是字节流
str.encode()
编码和解码方式必须一致,否则就会出现乱码或者是报错