字符编码详解

编码格式全解析
本文介绍了ASCII、GB2312、GBK、Unicode及UTF-8等常见字符编码格式的特点与应用范围,探讨了不同编码如何支持英语、汉语及其他语言字符,并讲解了Python解释器如何处理这些编码。

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型

 

   

转载于:https://www.cnblogs.com/amiee-785563694/p/6664185.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值