1、字符编码
编码:字符编码表
字符---------------——->数字
解码:字符编码表
字符<---------------——-数字
2、字符编码表
ASCII:只认识英文字符
1个英文字符对应8bit
8bit = 1Byte
1024Byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
gbk:支持英文字符和中文字符
1个字符对应16bit-->2 Bytes
shift-JIS:支持英文字符与日文字符
EUC-KR:支持英文字符与韩文字符
Unicode:支持万国字符
常用的字符:
1个字符对应2个字节
历史使命:
1、兼容万国字符
2、兼容老的字符编码表
utf-8:把Unicode做了一个优化
1个英文字符-->1Bytes
1个中文字符-->3Bytes
utf8mb4:存表情包
3、保证不乱码:
1、首先得保证存不乱码,如何保证?
内存不用管,内存固定使用Unicode格式
硬盘的编码格式统一改成utf-8
2、如何保证取不乱码
解码与编码用的同一张字符编码表
python3.0默认读取文件的编码格式是utf-8
python2.0默认读取文件的编码格式是ascii