Python之is和 的區別

2021-09-23 23:52:08 字數 757 閱讀 2804

== 比較的是兩個物件的value值的異同,只要值相同則返回true,並不關心是否是同乙個物件(id是否相同)。

is則直接比較物件,如果是同乙個物件(即物件的id相同),則返回true

id():在記憶體中儲存的位置

type:變數的型別

value:變數的值

==比較:type value

is比較:type value id

a = '1'

b = 1

a == b

false

a = '1'

b = a

a is b

true

a'1'

b'1'

li = [1,2,3]

li1 = li

li1[1, 2, 3]

id(li)

140052349907400

id(li1)

140052349907400

li2 = li.copy()

li2[1, 2, 3]

id(li2)

140052349056968

li == li1

true

li1 == li2

true

li2 is li

false

li2 is li1

false

li1 is li

true

Python之is 和 的區別

變數 id 在記憶體中儲存的位置 id a value type 變數的資料型別 type a value,type is 三個都判斷 只判斷value和type,不判斷id a is b true,a b一定相等,返回true a b true,a is b 不一定 pydev console s...

Python之is和 的區別

1 python中物件的三個基本要素,分別是 id 身份標識 type 資料型別 和value 值 2 is和 都是對物件進行比較判斷作用的,但對物件比較判斷的內容並不相同。3 用來比較判斷兩個物件的value 值 是否相等 type和value is也被叫做同一性運算子,會判斷id是否相同 id,...

Python面試之 is 和 的區別

億貝軟體工程 上海 全棧工程師 關注他契卡 在讀笛卡爾的孟德 等 1,210 人贊同了該文章 面試實習生的時候,當問到 is 和 的區別時,很多同學都答不上來,搞不清兩者什麼時候返回一致,什麼時候返回不一致。本文我們來看一下這兩者的區別。我們先來看幾個例子 a hello b hello print...