== 和 is 的区别

1.== 比较的是值

a=2

b=2

print(a == b)  # True

lis1 = [1,2,3]

lis2 = [1,2,3]

print(lis1 == lis2)  # True

2.is 是比较的是内存地址

a = 'name'

print(id(a))   #  内存地址

 

 字符串

a= 'name'

b= 'name'

print(a is b)  # True

 

数字

n= 10

n1=10

print(n is n1) # True

 

 

小数据池

  数字  -5~256

  字符串  字符串中如果有特殊字符他们的内存地址就不一样

  字符串中单个*20以内他们的内存地址一样,字符串中单个*21以上他们的内存地址不一样

列表

li = [1,2,3]

li2 = [1,2,3]

print(li is li2)  # False

 

元组

tu = (1,2,3)

tu1 = (1,2,3)

print(tu is tu1)   # False

 

字典

dic1 = {'name':'hello'}

dic2 = {'name':'hello'}

print(dic1 is dic2)  #  False

 

posted on 2019-05-06 11:47  Little_Raccoon  阅读(144)  评论(0编辑  收藏  举报