is 和 == 以及 编码和解码

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

在终端中
is 和 ==   以及 编码和解码

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(编码方式)---------将编码后的字节解码成所对应的明文

上一篇:ie浏览器下HTML上传控件input=file的美化


下一篇:java 二叉树