Python学习笔记:字符编码原理和操作详解
一、电脑字符集的历史 1、电脑是如何将二进制与字符对应起来的? 我们知道,电脑底层只认识0和1的二进制数据,为了让电脑可以跟人类互动, 我们使用8个二进制位(即1个字节)来对应一个更复杂的数字, 比如:使用二进制“01000001”来指代十进制“65”,也就是大写字母A 实际使用场景中,人类利用键盘打字符“A”时,实际上是打65这个数字,电脑再到表中寻找65所代表的二进制数据“01000001”,实际处理的是这个二进制数据,这样就对应起来了, 这种对应关系表就是最早的字符编码集ASCII码表,如下图: 2、字符集是如何发展成一个庞大家族的? 电脑最初是西方人发明的,欧美国家的字符比较少,他们仅占用了前面127个位置就已经够用了,而8位的二进制数据最多可以表示255个不同的字符,剩下的128个字符就留给了别的国家,那么别国肯定是不够用的,怎么办? 于是聪明的中国人在ASCII码中规定几个位置,默认当电脑要寻找这几个位置的字符时就映射到另外一张表格中,而这张表格中存储了完整的中文字符,中文字符的发展历史如下: a、GB2312:支持7000个汉字 b、GBK1.0:支持20000+个中文字符 c、GB18030:支持27000+个中文字符 d、Unicode