PYTHON-字符编码

day07字符编码复习:    1. 字符编码:字符编码就是字符与数字的对应关系表    计算机要想工做必须通电,即用‘电’驱使计算机干活,也就是说‘电’的特性决定了计算机的特性。        电的特性即高低电平(人类从逻辑上将二进制数1对应高电平,二进制数0对应低电平),        关于磁盘的磁特性也是一样的道理。结论:计算机只认识数字  很明显,咱们平时在使用计算机时,用的都是人类能读懂的字符        (用高级语言编程的结果也无非是在文件内写了一堆字符),如何能让计算机读懂人类的字符?  必须通过一个过程:      #字符--------(翻译过程)------->数字      #这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码        ASCII:只能识别英文字符,1Bytes=1英文字符        GBK:能够识别中文字符与英文字符串,2Bytes=1中文字符 1Bytes=1英文字符        Unicode            1. 可以兼容万国字符            2. 与其余任意编码的二进制数都有映射关系                unicode格式------编码encode------->GBK格式的二进制数                GBK格式的二进制数-------解码decode------->unicode格式        UTF-8:unicode的转换格式,3Bytes=1中文字符  1Bytes=1英文字符    2. 在python中字符编码的应用:        1. 保证执行python程序的前两个阶段不乱码,加文件头            在文件的首行写入: #coding:文件存的时候用的编码        2. 字符串类型演变:            python2有两种"字符串"相关类型:                种类一:#coding:gbk,x='上' # '上'存成了GBK编码后的二进制                种类二:x=u'上' # '上'存成了unicode编码后的二进制            python3有两种"字符串"相关类型                x='上' # '上'存成了unicode编码后的二进制                res=x.encode('gbk') #gbk格式的二进制    3. 总结:            1. 保证不乱码的核心法则:以什么编码存的就应该以什么编码取            2. 在python2中定义字符串,应该加上前缀u,好比x=u'你好'            3. 在编写python文件时,必须加文件头:#coding:文件存的时候用的编码                英文字节    中文字节            unicode   2     2            utf-8     1     3            gbk       1     2            ascii     1
相关文章
相关标签/搜索