is 与 == 的区别;小数据池; 编码与解码
1, is 与 == 的区别
== 比较的是两边的值
is 比较的是两边的地址 id ()
2,小数据池(在终端中)
数字小数据池的范围 -5 ~ 256
字符串中如果有特殊字符他们的内存地址就不一样
字符串中单个*20以内他们的内存地址一样,单个*21以上内存地址不一致
注意: pycharm中, 一个py文件中所有相同的字符串 一般都是使用一样的内存地址
3,编码和解码
ascii 码: 不支持 中文 支持 英文 数字 符号 8位 一个字节 gbk码 国标: 支持 中文,英文,数字,符号 英文 16位 二个字节 中文 16位 二个字节 unicode 万国码 支持 中文,英文,数字,符号 英文 32 位 四个字节 中文 32位 四个字节 utf-8 长度可变的万国码 最少用8位 英文 8位 一个字节 中文 24位 三个字节
Python3中 程序运行阶段 使用的是unicode 显示所有的内容
bytes类型
传输和存储都是使用bytes
在网络传输和数据存储的时候. 换gbk, utf-8(90%)
编码
print(s.encode('utf-8')) # 编码 encode('utf-8') utf-8 是指定要编码成什么样的编码类型
解码: print(s1.decode('utf-8')) #
编码和解码:
encode(编码方式) ----unicode变成你需要的编码
decode(编码方式) -----把目标bytes转换成字符串
注意: 用什么进行编码就要什么进行解码 不然后会懵逼!