Pthon第十一课:编码与解码、文件读写(open())

一、计算机的编码

计算机只能识别0和1,是如下所示:
在这里插入图片描述
从输入内容到计算机转变成0与1的代码就是编码,计算机内部有一个编码表进行一一对应。

二、二进制

用来存放一个0或者1的位置,就是计算机中最小的储存单位,叫做【位】,外国名字叫【bit】,也叫做【比特】。我们规定8个比特构成一个【字节】(byte),字节是计算机里最常用的单位。
在这里插入图片描述
在这里插入图片描述

  • 我们千兆宽带,其实说的是以比特每秒位单位,1000M就是 1000Mbit/s。
  • 我们下载速度是以字节每秒位单位显示的,1byte = 8bit。
  • 那么,1000M bit = 125M byte。
  • 也就是说千兆宽带,每秒下载速度最多125M。那我们的百兆宽带,下载速度也就只有十几兆了。

三、编码表

  • 计算机开始发明的时候,用来解决数字计算问题。但是后来发现,只用二进制解决问题还是有限。
  • 计算机这种东西最早由老外发明,外国人使用的英语只有26个字母,再加上标点、数字和一些符号也不会太多,老外搞出来一个东西叫做ASCII码,这个比二进制高级了一些。ASCII码组合出的256种状态,至此一个字节就使用满了。
  • 后来,计算机传入中国,汉字千千万,256种状态远远不够。科学家就重新编写了一张编码表,叫做GB2312(word中有这种编码方式),它使用2个字节16个比特位,来表示绝大多数(65535)个汉字。后来,为了显示更多的汉字,又研究出一套编码,GBK编码。

美国人有ASCII码,中国人有GB2312/GBK编码,那欧洲人、阿拉伯人也有他们自己的编码方式,这就导致了乱码的产生。

  • Unicode应运而生。Unicode把所有语言都统一到一套编码里,可以容纳100多万个符号,这样就不会再有乱码问题了。但是由于把所有语言都统一到一套编码里中,就造成Unicode码越来越庞大。比如英文A,之前可以用00010001表示,但是到了Unicode码中,必须使用00000000 00010001来表示。太长了,太麻烦了。
  • 科学家们又针对Unicode码研究出了一种可变长度字符编码,叫做UTF-8(8-bit Unicode Transformation Format),它可以根据不同的符号来变化字节长度。
    在这里插入图片描述

四、编码encode()与解码decode()

  • 编码encode就是把人类语言转成计算机语言。
  • 解码decode就是把计算机语言转成人类语言。
    在这里插入图片描述
print('刘德华'.encode('gbk'))
print('郭富城'.encode
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值