「is」和「 」的區別 Python

2021-10-07 07:33:25 字數 734 閱讀 8834

is用來檢查物件的標識(id), id() 函式用於獲取物件記憶體位址,而==用來檢查兩個物件引用的變數的值是否相等。

通過乙個例子說明。建立一些列表並將其分配給不同的名字。請注意,下面的b指向與a相同的物件:

a =[1

,2,3

]b = a

c =[1,

2,3]

下面來檢查是否相等,你會注意到結果顯示它們都是相等的。

print

(a == b)

print

(a == c)

#=> true

#=> true

但是它們具有相同的標識(id)嗎?答案是不。

print

(a is b)

print

(a is c)

#=> true

#=> false

我們可以通過列印他們的物件標識(id)來驗證這一點。

print(id

(a))

print(id

(b))

print(id

(c))

#=> 4369567560

#=> 4369567560

#=> 4369567624

你可以看到:c和a和b具有不同的標識(id)。

python 和is的區別

python中物件包含的三個基本要素,分別是 id 身份標識 type 資料型別 和value 值 是python標準操作符中的比較操作符,用來比較判斷兩個物件的value 值 是否相等 is也被叫做同一性運算子,這個運算子比較判斷的是物件間的唯一身份標識,也就是id是否相同 舉例 x y 4,5,...

python 和 的區別

相同點 和 都是用於求和 連線運算的 不同點 對於可變物件來說 和 是不一樣的 set和dict沒有這兩個操作 可變物件 相當於對原物件 之後產生乙個新物件 可變物件 相當於修改原物件內部的值,並沒有修改原物件,也就是修改前後物件的記憶體位址不變 id 記憶體位址的整數表示 示例 如下所示 ls 1...

python的 和 的區別

今天看到一篇文章關於 與 的區別,區分其中的區別需要了解到可變物件與不可變物件 應為對於物件是否為不可變對這兩種表示式有著一定的區別 在 python 中任何物件都有的三個通用屬性 唯一標識 型別 值。唯一標識 用於標識物件的在記憶體中唯一性,它在物件建立之後就不會再改變,函式 id 可以檢視物件的...