Python学习-字符编码的理解

Unicode编码和ASCII码两者都是机器能够理解的编码,你就是说出现一个码,计算机知道它对应哪种符号。因为这种编码形式将不同的字符全都和电平的高低电位联系在一起。

Unicode,这种编码是全球通用的编码,就是说所有计算机都包含的编码。包含 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节),这三种形式。

也就是说utf-8,就是一种Unicode的编码。 

 utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间。

GBK编码就是另一种编码的形式。这是包含中文汉字的一种早期编码形式,但是,没有包含所有的汉字。并且和Unicode的不同。所以如果以g b k编码的形式存储,我们就要专门指定用g b k的形式进行解码。

1.在python2默认编码是ASCII, python3里默认是unicode;另外每个软件通常也会有自己默认的编码形式。

2.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string

3.另外,这里非常值得注意的事情是,我们所关心的字符编码,他的对象是字符而不是数字。数字基本上可以看成是直接存储的。

http://www.cnblogs.com/yuanchenqi/articles/5956943.html

原文地址:https://www.cnblogs.com/Ian-learning/p/7906775.html