这节课我们讲什么是字符编码!
我们在写代码的时候,用的都是人类能读的懂得字符,比如中文字符、英文字符等等。但是计算机只能识别二进制数,它本身是基于电工作的。
电有高低电频两种特性,人类从逻辑层面,将高电频对应数字1,低电频对应数字0。这就决定了就算计只能识别有0和1组成的数字,所以从我们人类写的字符,倒进算计能识别的二进制数,必须要有一个翻译的过程。
这个翻译的过程必须有一个特定的标准,这个标准就称之为字符编码表。
这个字符编码表上存放的就是字符和数字一一对应的关系,只要我们写的字符能够和数字有对应关系,那在把数字转成二进制就比较方便了。
我在pycharm里写一个‘仙’字,计算机是不认识这个字的,它只认识0101这种二进制数。
假设我们规定,这个‘仙’字在字符编码表里面,对应的数字是10086,然后我们写的这个字计算机背后一定是给我们对应成了10086这个数字,然后把10086这个数字转成了二进制,存在了内存里面。
这种对应关系确定好了之后只要我们把这个‘仙’字打出来了,计算机就会按照我们设定好的对应关系,把它转成10086对应的二进制。最后一按保存,这个二进制数就存到硬盘里面了。
到这里我们就知道了,字符编码表就是一个字符和一个数字的对应关系。很简单,简单到我们自己都可以设计,只是我们设计的不被计算机认可而已。
所以字符编码表的作用就是用于把人类的字符,转换成计算机能识别的数字。
懂了这个之后我们来思考一个问题, 我在pycharm里写一个‘仙’字计算机发生了几件事情?
首先第一件事我们刚刚是讲过了的,就是计算机会按照字符编码表, 翻译成二进制数。假如这个数字是1010100,然后把这个二进制数存到内存里面,这件事只是把这个数据存到内存里面去了。
但是我们为什么能够在屏幕上看到这个‘仙’字呢?
这是因为我们的这个文本编辑器pycharm,又把它从内存里取出来了,庵后又按照同一张字符编码表,把它反向翻译成我们所认识的这个字符‘仙’。
仙----->翻译----->1001000
仙<-----翻译<-----1001000
我们现在的计算机处理速度都很快,所以我们会感觉刚输入‘仙’这个字的同时立马也就看到了这个结果。
当你的计算机性能不够的时候,这个过程就比较慢,给我们的感觉就是电脑很卡。
未经允许不得转载:445IT之家 » Python 什么是字符编码