python中is和==有什麼區別

is 與 == 區別 :

is 用於判斷兩個變量引用對象是否爲同一個,就是所引用的對象的內存地址是否一致
== 用於判斷引用變量的值是否相等。只判斷值和數據類型

id():在內存中存儲的位置
type:變量的類型
value:變量的值
==:type value
is:type value id

a = '1'
b = a
a is b
True
a
'1'
b
'1'
id(a)
140325344997424
id(b)
140325344997424

python中is和==有什麼區別

b
[1, 2, 3]
a
[1, 2, 3] # a 和 b 都是一個列表 並且元素都想共同
type(a)
<type 'list'>
type(b)
<type 'list'> # 數據類型相同
id(a)
140332022852640
id(b)
140332022967184 # 但是所指向的內存地址不同
a is b # 導致a is b 返回的是 False
False
a == b # 但是兩個變量的數值以及數據類型一致 此時a ==b 返回True
True

python中is和==有什麼區別

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