Python中is和==的區別 - 邱乘屹的個人技術博客

is和==的區別

python中有很多的運算符,其中is和==在面試中常常被提到,所以,今天就總結了他倆的區別

首先要知道

在講python中is和==的區別之前,首先要了解 Python中對象的三個基本要素 id(身份標識)、type(數據類型)和value(值)
在這裏插入圖片描述
python中每生成一個對象,都要給該對象生成一個身份標識,如下:
在這裏插入圖片描述

is和==的區別

OK,瞭解到上面的知識後,我再說一下is和==的區別

is 成立的條件是判斷的兩個對象是否爲相同的身份標識 舉個例:
在這裏插入圖片描述
他們的輸出結果都是成立的,說明id相同
在這裏插入圖片描述

再來試試其他數據類型呢?
在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述
可以看出 ,當數據是整型和字符串時,他們的身份標識相同,判斷成立,而當數據是列表、字典、元祖和集合時,身份標識不同,判斷不成立
is也叫同一性運算符,可以判斷對象間的唯一標識是否一致,也就是id是否相同

==是python標準操作符中的比較操作符,用來比較判斷兩個對象的value(值)是否相等,舉個例子:
在這裏插入圖片描述
在這裏插入圖片描述
由此可以看出 == 只需要對象的value值相等,便可成立!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章