时间:2022-04-23 点击: 次 来源:网络 作者:佚名 - 小 + 大
零基础学python语言 pdf吉林大学北京理工大学清华大学电子书
下载地址 https://share.weiyun.com/S11bpehi
资料目录 小甲鱼零基础学python视频全套96集 刘金玉零基础python入门到精通教程100集全套VIP精选 跟老齐学Python从入门到精通 电子工业出版社 encode()和decode()是两个内置函数。 codecs.encode(obj[,encoding[,errors]]):Encodes obj using the codec registered for encoding. codecs.decode(obj[,encoding[,errors]]):Decodes obj using the codec registered for encoding. Python2默认的编码是ASCII,通过encode()可以将对象的编码转换为指定编码格式(称作“编码”),而decode是这个过程的逆过程(称作“解码”)。 做一个实验,才能理解: >>> a = "中" >>> type(a) <type 'str'> >>> a '\xe4\xb8\xad' >>> len(a) 3 >>> b = a.decode() >>> b u'\u4e2d' >>> type(b) <type 'unicode'> >>> len(b) 1 在做这个实验之前,或许还不是很迷茫(知道得越多越迷茫),实验做完了,自己也迷茫了。别急躁,对编码问题的理解要慢慢来,如果一时理解不了,就先按照要求做,做着做着就豁然开朗了。 变量a引用了一个字符串类型对象,但严格地讲是字节串,因为它是经过编码后的字节组成的序列。也就是你在上面的实验中看到的“中”这个字在计算机中编码之后的字节表示。(关于字节可以搜索一下)。用len(a)来度量它的长度,它是由三个字节组成的。 然后通过decode函数将字节串转变为字符串,并且这个字符串是按照Unicode编码的。在Unicode编码中,一个汉字对应一个字符,这时候度量它的长度就是1。 反过来,一个Unicode编码的字符串也可以转换为字节串。 >>> c = b.encode('utf-8') >>> c '\xe4\xb8\xad' >>> type(c) <type 'str'> >>> c == a 关于编码问题先到这里点到为止吧。因为再扯,还会扯出问题来,读者肯定感到不满意,因为还没有知其所以然。 |
上一篇:零基础学python编程语言视频南京合肥泰州连云港零基础学python
下一篇:没有了