1.is 比较的是内存地址
a="name"
b="snow"
print(a is b) # False
id() 获取内存地址
a=""
print(id(a)) #
== 比较两边的值
a=""
b=""
print(a == b) # False
2.小数据池
a. 数字小数据池的范围是 -5~256
a=-6
b=-6
print(a is b) # False
b.字符串中如果有特殊字符,他们的内存地址就不一样. 在终端中不一样,但在pycharm中,则会输出True
例如:在pycharm中
a="name%"
b="name%"
print(a is b) # True
在终端中
c.字符串中单个*20以内他们的内存地址一样,单个*21以上他们的内存地址不一样
3.编码和解码
ASCII 码 : 最早的编码,至今还在使用,8位一个字节,不支持中文,支持英文,数字,符号
GBK 国标码 16位两个字节
unicode 万国码 32位4个字节
UTF-8 可变长度的unicode,英文是8位1个字节:欧洲文字是16位两个字节:汉字是24位3个字节
python3中,程序运行阶段中,使用的unicode,显示所有的内容
bytes类型
传输和存储过程中都使用bytes
pycharm中存储默认使用的是utf-8
编码
encode(编码方式)---------拿到明文编码后对应的字节
decode(编码方式)---------将编码后的字节解码成所对应的明文