首先, 明確以下三個知識點 id -> 返回對象的'唯一標識符' == -> 比較操作符,比較判斷兩個對象的value(值)是否相等 is -> 同一性運算符,判斷id是否相同
實驗
總結
> a ?is ?b,實際上是做 id(a)==id(b) 運算
> a == b,實際上比較的是id(a)這個地址指向的值(內存地址)是不是和id(b)這個地址指向值一樣
> 只有數值型和字符串型的情況下(a和b的value相等),a ?is ?b才為True,當a和b是tuple,list,dict或set型 ? ? ? 時,a is b為False
> python為了實現對內存的有效利用,對小整數[-5,256]內的整數會進行緩存,不在該范圍內的則不會緩存
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/96312