编码二以及is,小数据池
Posted 明天就减肥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编码二以及is,小数据池相关的知识,希望对你有一定的参考价值。
编码二
ASCII,unicode(16位),unicode(32位),utf-8以及GBK
文件的传输和存储都是先将字符转化为二进制方式再进行的,unicode编码的数据,有资源浪费的缺陷,因此一般都用非unicode编码传输数据
各种编码的二进制之间不能互相识别,但可以互相转化,GBK和UTF-8要通过unicode转化
python3x版本下,字符串是通过unicode编码转化二进制的,因此字符串传输和存储之前要转化成非unicode的二进制,因此有了bytes数据类型
bytes类型的英文字符显示方式只是加个b,可以读取,但是中文字符是以字节包显示,不可直接读取,bytes在python3中是一种独特的数据类型(字节包,二进制)
str与bytes类型的转换方法
str转bytes类型,str.encode(“非unicode编码”)编码要加引号,不然会报错
bytes类型转str,bytes.decode(“非unicode编码”)
is关键字与小数据池
=等号是赋值,==是判断两变量的值是否相等,id判断两个值对应的id地址是否相等
=连接的两个变量指向相同的内存地址,修改一个变量,另一变量值随之变化
==与内存地址无关,只比较变量值
id查看数据内存地址
小数据池(要在cmd环境中检测,不能在pycharm中检测),只有整数和字符串有小数据池
整数:-5到256有小数据池
字符串:
字母和数字的任意组合有小数据池,有特殊字符的没有小数据池
单个字母的字符串*n,n<=20有数据池
其余类型的没有小数据池
以上是关于编码二以及is,小数据池的主要内容,如果未能解决你的问题,请参考以下文章