Sobes.tech
Middle

Python'da is va == ning farqi nima?

sobes.tech AI

AIdan javob

Python'da is operatori ikki o'zgaruvchining xotirada bir xil ob'ektga ishora qilayotganligini tekshiradi (ya'ni, ob'ektlarning identifikatsiyasini solishtiradi). == operatori esa ob'ektlarning qiymatlari tengligini tekshiradi, ya'ni __eq__ metodini chaqiradi va mazmuni yoki tenglik mantiqini solishtiradi.

Misol:

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(a is b)  # True, chunki b aynan shu ob'ektga ishora qilmoqda
print(a == b)  # True, qiymatlar mos keladi

print(a is c)  # False, turli ob'ektlar
print(a == c)  # True, ro'yxatlarning qiymatlari teng

Shunday qilib, is - bu identifikatsiya tekshiruvi (bir ob'ekt), va == - mazmuni bo'yicha tenglik tekshiruvi.