概述
本文是记录下个人对编程时遇到的编码(encode)和解码(decode)的理解。
类比
首先让我们看一下这个情形:有2个特工,分别叫A和B,他们之间通过电报传输情报,既然是情报,那么肯定是要加密的,这样敌人拿到这个情报也无法解读,只有知道如何解密的人才能读懂情报内容。
假设A和B约好,解密规则是对收到的信息从右往左读,然后A准备发送“这里有敌人”
这条情报。根据规则,A发送到电报上的信息应该是“人敌有里这”
,当B收到情报后,按照从右往左读的规则,解读出真正的情报内容是“这里有敌人”
。
编码(encode)和解码(decode)
我们在用python编程时,经常会遇到编码和解码的问题,其实这些概念和传递情报的例子是一样的。
所谓编码就是把要传递的信息按照一定的规则进行组织,所谓解码就是把收到的信息按照一定的规则进行解析,并且这个规则必须是编码者和解码者事先都知道或约定好的。
下面举个简单栗子,
info = 'hello 你好'
result = info.encode('UTF-8') # 以UTF-8规则进行编码
print(result)
actual = result.decode('UTF-8')# 以UTF-8规则进行解码,得到正确结果
print(actual)
actual = result.decode('gbk') # 以gbk规则进行解码,得到错误结果
print(actual)
输出结果如下,
可以看出,只有双方按照相同的规则来进行编解码,才能正确通信。
如果有写的不对的地方,希望能留言指正,谢谢阅读。
最后
以上就是着急小鸽子为你收集整理的编码和解码的概念理解类比编码(encode)和解码(decode)的全部内容,希望文章能够帮你解决编码和解码的概念理解类比编码(encode)和解码(decode)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复