is 和 == 的区别:
is()函数; is比较的是id 比较的内存地址
== ; 比较 比较的是两边的值
回顾编码:
1;Ascii 最早的编码至今还在使用,8位一个字节
2;GBK 国标码,16位2字节
3;Unicode 万国码 ,32位4字节
4;Utf-8 可变长度的Unicode
is()
通过ID我们可以看到一个变量表中的值在内存中的地址
s = "速度与激情" abc = id(s) #得到内存地址 print(abc)
s = 10
print(id(s)) #得到的是内存地址
s = [1,2,3] #得到的是内存地址
print(id(s))
字符串:
a = "alex"
b = "alex"
print(a is b) #True
数字:
a = 10
b = 10
print(a is b) #True
1. is id() 查看内存地址
2. str 存在小数据池
== 比较的是左右两边的值
a = "alex" b = "alex" print(a == b) #结果为True a = 1 b = 1 print(a == b) #结果为True a = [1,2,3] b = [1,2,3] print(a == b) #True
#小数据池
数字小数据池范围 -5~256
字符串中如果有特殊符号他们的内存地址就不一样
字符串中单个*20以内他们的内存地址是一样的,大于20内存地址是不一样的
注意:上述范围是指在终端中 Pycharm中和终端有些是不一样的(有Pycharm默认)
注意:注意:注意:(在来说一下 is 和 == 的区别)
is 比较的是id()计算出来的结果,就是数据(对象)的内存地址
== 是判断 比较的是内容,是具体的值