判断两个变量的内存(内存块即单元存储)的住址是否相同,如果住址相同,则认为这两个变量是相同的,否则为不同。
表达方式:"a" is "b" or "a" is not "b" 两种
返回值为布尔类型
# coding:utf-8
a = 20
b = 20
print(a is b)
# coding:utf-8
a = 300
b = 300
print(a is b)
在原生python解释器中,数字定义的范围是:0至255。
当 a=b=20时,变量直接从已经定义好的内存地址中直接拿取;当a=b>255时,原内存住址中未被事先定义,则返回False。
然而,同样一串代码,在脚本中相等(反馈为True),但在解释器中不相等(反馈为False)。
# coding:utf-8
a = 300
c = 0
print(a > c)
b = 300
print(a is b)
注:单元存储即内存地址。