标签:版本 存储 相等 判断 特殊字符 文字 unicode编码 encode 编码
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编码”)
=等号是赋值,==是判断两变量的值是否相等,id判断两个值对应的id地址是否相等
=连接的两个变量指向相同的内存地址,修改一个变量,另一变量值随之变化
==与内存地址无关,只比较变量值
id查看数据内存地址
小数据池(要在cmd环境中检测,不能在pycharm中检测),只有整数和字符串有小数据池
整数:-5到256有小数据池
字符串:
字母和数字的任意组合有小数据池,有特殊字符的没有小数据池
单个字母的字符串*n,n<=20有数据池
其余类型的没有小数据池
标签:版本 存储 相等 判断 特殊字符 文字 unicode编码 encode 编码
原文地址:https://www.cnblogs.com/rain-chenwei/p/dying_in_the_sun.html