1.什么是字符编码
文字符号------编码------>数字
文字符号<-----解码-------数字
字符编码表:
一个字符对应一个数字
2.为何要研究字符编码
为了解决乱码问题:
存取都用同一张字符编码表
3.储备知识
cpu 程序 硬盘
4.字符编码表的发展历程
1、一家独大
ASCII:只能识别英文字符,用8个bit对应一个英文字符
2.天下大乱
GBK:能识别中文和英文
用16个bit(2Bytes)对应一个字符
shift-JIS
Euc-KR
3.归于统一
unicode:能识别万国字符
用16bit(2Bytes)对应一个字符
utf-8
4.总结:
英文字符------内存(ASCII格式的二进制数)------硬盘(ASCII格式的二进制数)
中、英文字符---内存(GBK格式的二进制数)-------硬盘(GBK格式的二进制数)
日、英文字符---内存(Shift-jis格式的二进制数)--硬盘(Shift-jis格式的二进制数)
万国字符------内存(unicode格式的二进制数)---硬盘(utf-8格式的二进制数)
万国字符 - ----------》unicode - ------------》utf - 8
中文、英文 - ---------》unicode - ------------》gbk
日文、英文 - ----------》unicode - ------------》shift - JIS
5、运行python程序的三个阶段
1. 先启动一个python解释器
2. python解释器会将文件内容从硬盘读入内存
3. python解释器会解释执行刚刚读入内存的代码,识别语法
x = "上"
print(x)
utf8_res = x.encode("utf-8")
unicode_res = utf8_res.decode("utf-8")
print(unicode_res)