字符编码详解

1.acsii表,00000000,8位存储,一共有256个种表示方法,使用英语的国家使用一张acsii表即可

  a,美国人使用只需要128种表示方法即可表示所有字符

  b,拉丁国家使用了256种表示方法

2.GB2312,中国人使用,需要两个字节,刚开始只能表示几千个汉字

  GBK,能表示所有汉字,2万多种

3.unicode  两个字节能表示6万多种种状态,俗称万国码,能够表示所有国家的明文

4.utf-8  中文默认使用三个字节,英文一个字节,结合unicode,ascii码衍生出来的一种编码

5.python解释器:

  python解释器是一个对其它编码进行编码,解码,并且执行文件的一个工具

  对代码进行逐行解释逐行执行

 

文件用什么编码必须用同一编码进行解码,才不会报错

打开文件(二进制)

1先解释器对文件进行解码

Py3默认使用的是utf—8进行解码

Py2默认使用的是ascll码进行解码(可以在代码第一行加coding:utf-8

2在由解释器把一行行的代码翻译到内存

         Py3把一行行中的”字符串”默认解释成unicode存在内存中

         Py2是把一行行中的“字符串”解释unicode存在内存中

3在终端输出

         Py3由于内存中是unicode,终端无论是什么都没问题

         Py2由于内存中是unicode,在遇到print时,py2会默认帮我们转换成byte型

 

   

posted @ 2017-04-04 00:57  丨孤家寡人  阅读(144)  评论(0编辑  收藏  举报