day08

字符编码

字符(存储了信息的东西)编码()

键盘 发送的是电流 --> 主机(内存)接收到电流(当作01010101010) --》 显示屏 接收电流(当作01010101010 --》键盘)

文本编辑器存储信息的过程

文本编辑器 --》 写文本 --》 存储信息

显示屏(内存) --》(转换)硬盘

硬盘中无论躺着什么格式的编码文件,unicode都可以识别,假设你看日本的片子,从硬盘中读取fuck编码,然后unicode识别,unicode帮你转换成gb2312,解决了乱码的问题,用unicode

内存中unicode取,存用utf8存(硬盘),全世界的人写代码/写文件都是用utf8

gb2312和gbk的区别

gb2312 --》 常用词

gbk --》 所有字

用什么编码写,就用什么编码读

写用utf8,存用utf8,读用gbk--》乱码

写用utf8,存用gbk,--》乱码

编码和解码

unicode编码 ---》(编码) utf8 从内存到硬盘

utf8 --》(解码) unicode 从硬盘到内存

python解释器(文本编辑器)解释python代码的流程

1/python解释器相当于文本编辑器,把代码读入python解释器 --》 字符编码 -》 python2默认是ascill,python3默认utf8 --》 上coding头

2/识别代码 --》print有意义 --》 语法问题

3/产生结果 --》 跑到终端--》字符编码

python2

python2有两种存储变量的形式,第一种:unicode;第二种:按照coding头来的

假设python2用utf8存储x='中文',当你print(x)的时候,终端接收gbk的变量x,但是windows终端编码是utf8,会乱码

python3

python3只有一种存储变量的形式,unicode

python3用unicode存储,终端接收的是unicode,widonws终端编码是utf还是gbk不重要,不会乱码

posted @ 2019-09-17 18:37  夜凛  阅读(72)  评论(0编辑  收藏  举报