1. 程式人生 > >python中is和==操作符

python中is和==操作符

在以前的面試中,有一次被問到is的用法,當場懵逼,今天有空整理了一下這2個運算子的簡單用法:

 

==運算子:測試兩個被引用物件是否有相同的值

l = [1, 2, 3]
m = l[:]
print m == l


True

 

is 運算子:檢查物件的同一性,就是檢查是指向同一個物件

l = [1, 2, 3]
m = [1, 2, 3]
n  = l

print l is m
print n is l

False
True

因為m是另外一個物件的,所以m和l不是指到同一個物件了,結果為False

 

但是因為小的整數和字串被快取並複用了,所以is會告訴是同一個相同的物件

l = 2
m = 2

print l is m

True